델파이 콤보박스 key 값 설정
콤보박스 이름 : Cbo_Adjust
콤보박스 속성 :
ItemHeight : 17
Style : csOwnerDrawFixed
--OnDrawItem Handler---
with (Control as TComboBox) do
begin
Canvas.Font.Size := 10;
Canvas.FillRect (Rect);
Canvas.TextOut (Rect.Left + 2 , Rect.Top + 2 , Items.Values [Items.Names[Index]]);
end;
--COMBOBOX 데이터 넣을 때---
--- 불필요할 수도 있음 ---
Cbo_Adjust.Items.Values ['*'] := FieldByName ('CODE_DESC').asString;
while not eof do
begin
Cbo_Adjust.ITems.Values [FieldByName ('CODE').asString] := FieldByName ('CODE_DESC').asString;
next;
end;
-- COMBOBOX 의 CODE 부분을 불러올때 --
ParamByName ('P_ADJUST_NO').asString := Cbo_Adjust.Items.Names [Cbo_Adjust.ItemIndex];
-- COMBOBOX 의 특정 ITEM 을 선택할 대 (프로그램적으로)
Cbo_Adjust.ItemIndex := Cbo_Adjust.Items.IndexOfName (FieldByName ('CODE').asString);
-- ComboBox의 값을 삭제할때
procedure TM0002M.ComboBoxF7KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if ((Key = VK_DELETE) or (Key = VK_BACK)) then
(Sender as TComboBox).ItemIndex := -1;
end;
****2개의 필드값을 불러오지 않고 1개의 필드값만 불러오고자 할경우***
Style : csDropDownList
--OnDrawItem Event Handler는 필요없슴---
-- COMBOBOX 의 특정 ITEM 을 선택할 대 (프로그램적으로)
ComboBoxF3.ItemIndex := ComboBoxF3.Items.IndexOf(GridCells[2, NewRow]);
-- CODE가 아닌 문자값 VALUE 값 가져올때 ------------------
문자값 := cmbENGIN_CLASS.Items.Strings[cmbENGIN_CLASS.ItemIndex];
문자값 := cmbFEE_GUBUN.Items.Values[cmbFEE_GUBUN.Items.Names[cmbFEE_GUBUN.ItemIndex]];
'Delphi Tip > 컴포넌트' 카테고리의 다른 글
델파이 컴포넌트(Component) 1편 (0) | 2023.07.14 |
---|---|
델파이 DSPack MP4 (0) | 2021.11.11 |
TAdvColumnGrid 팁 (0) | 2021.11.09 |
델파이 XE10.2에 SAPI 컴포넌트 등록 방법 (0) | 2021.11.08 |
델파이 TChart 마커 이동하기 (0) | 2021.11.04 |
댓글