Q&A

  • {이분분 좀 설명해주세요} 감사합니다
이 및에 {} 바로 밑에부터 아시는 분은 설명좀 해주세요





unit Unit1;



interface



uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

StdCtrls;



type

TForm1 = class(TForm)

ListBox1: TListBox;

Button1: TButton;

procedure ListBox1DrawItem(Control: TWinControl; Index: Integer;

Rect: TRect; State: TOwnerDrawState);

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;



var

Form1: TForm1;



implementation



{$R *.DFM}



{ 이부분 좀 설명해주세요 }

procedure TForm1.ListBox1DrawItem(Control: TWinControl; Index: Integer;

Rect: TRect; State: TOwnerDrawState);

begin

with TListBox(Control).Canvas do begin

if Index = 2 then begin

Brush.Color := clRed;

Font.Color := clBlue;

end;

FillRect(Rect);

TextRect(Rect, Rect.left, Rect.top, Listbox1.Items[Index]);

end;

end;



procedure TForm1.Button1Click(Sender: TObject);

begin

listbox1.Items.add('dfsf sdgfhjdslkfg sdkjf dslfkgh sdgj');

end;



end.

3  COMMENTS
  • Profile
    김지엽 2001.04.27 04:13
    List박스에 아이템이 올라갈 때 동작하는 이벤트군요. 아이템 인덱스가 2이면 배경색은 ClRed로, 폰트 색은 ClBlue로 바꿔줘는 이벤트구요..?



  • Profile
    김아성 2001.04.27 04:41
    김지엽 wrote:

    > List박스에 아이템이 올라갈 때 동작하는 이벤트군요. 아이템 인덱스가 2이면 배경색은 ClRed로, 폰트 색은 ClBlue로 바꿔줘는 이벤트구요..?











    > 감사합니다. 그런데 실행이 안되는 이유는 뭐죠?

  • Profile
    권민호 2001.04.27 07:24
    김아성 wrote:

    > 김지엽 wrote:

    > > List박스에 아이템이 올라갈 때 동작하는 이벤트군요. 아이템 인덱스가 2이면 배경색은 ClRed로, 폰트 색은 ClBlue로 바꿔줘는 이벤트구요..?

    >

    >

    >

    >

    >

    > > 감사합니다. 그런데 실행이 안되는 이유는 뭐죠?



    문장상으로 보면 3번째라인에 적용이 되는 것 같은데

    리스트박스에 항목이 한건만 올라가서 그러는 것 아닌가요?