TcxImageComboBox는 ComboBox를 대체할수 있는 훌륭한 컴포넌트입니다.
TcxImageComboBox는 사용법이 일반 ComboBox와 비슷하지만 몇가지 장점이 존재 합니다.
1. 콤보에 ImageList와 연결하여 이미지를 그릴 수 있습니다.
2. 실제 value값과 화면에 표시하는 값을 별개로 표시할수 있습니다.
예 > DB1
Code | Display_Text |
1 | 전체 |
2 | 중학교 |
3 | 고등학교 |
위와 같은 디비가 존재 할 경우 아래와 같이 코딩한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
while not Query1.Eof do begin with cxImageComboBox1.Properties.Items.Add do begin Description := Query1.FieldByName('Name').AsString; Value := Query1.FieldByName('Display_Text').AsInteger; end; Query1.Next; end; ... procedure TForm1.cxImageComboBox1PropertiesChange(Sender: TObject); begin Label1.Caption := cxImageComboBox1.EditText; Label2.Caption := cxImageComboBox1.EditValue; end; |
위와 같이 코딩하고 콤보의 값을 ‘중학교’로 선택한경우 실제 값은 아래와 같이 설정됩니다.
cxImageComboBox1.EditValue := 2; <– 와 같이 설정됩니다.
응용해서 TcxGridTableView의 Column의 Properties의 내용을 TcxImageComboBoxProperties로 설정하면 컬럼의 값과는 별도로 화면에 코드와 일치하는 내용이 출력되므로 쿼리등이 간편(Code에 따른 Join이 줄어든다.)해지고 쉽게 처리 가능하다.
TcxLookupCombo와 비슷하게 처리 되기 때문에 두 Combo의 사용 빈도가 아주 높은 편이다.
최신 댓글