콤보박스에 나타나는 아이템에 마우스를 갖다 놓을경우 부메뉴가 나타낼려구 하는데요
소스는 이렇게 했구요
procedure TFMain.ComboBox1DrawItem(Control: TWinControl; Index: Integer;
Rect: TRect; State: TOwnerDrawState);
begin
//사용하기 전에 ComboBox의 Style을...csOwnerDraw로 맞추어야 된다.
with ComboBox1.Canvas do
begin
FillRect(Rect);
if (odSelected in State) then
begin
Brush.Color := clHighlight;
Font.Color := clHighlightText
end
else
begin
Brush.Color := clWindow;
Font.Color := clWindowText;
end;
if (odSelected in State) then
begin
CheckListBox1.Visible := Index = 0;
CheckListBox2.Visible := Index = 1;
CheckListBox3.Visible := Index = 2;
CheckListBox4.Visible := Index = 3;
Update;
end;
end;
TextOut(Rect.Left+1, Rect.Top+3, ComboBox1.Items[Index]);
end;
그리고 폼create에 체크리스트 박스를 visible를 false 했는데..쩝
이렇게 코딩을 하니까 text속성에 값을 할당 할수가 없고 아이템의 글자가 깨어지는군요...
아시는 분들 많은 조언 부탁드립니다..
그리고 이 방법말고 팝업메뉴를 써면 조금더 나아 질수 있다고 하든데..
방법좀 가르쳐 주세요