|
에거 감사합니다.. 근데여..
그래두 이벤트가 일어나질 않네요...
5.0 En / WINDOWS 2000 Pro
개발환경은 이러한데.. 뭔가 이상이 있는 걸까요?
박지훈.임프 님이 쓰신 글 :
: 임프랍니다.
:
: 리스트뷰의 경우, OwnerDraw 프로퍼티를 false로 해도 발생하는 OnCustomDraw 이벤트와는 달리,
: OnDrawItem은 반드시 OwnerDraw를 true로 설정해야 발생하게 됩니다.
:
: 그런데 아래 다른 글을 보니 OwnerDraw를 설정해도 안된다는 말이 있군요.
: 보여주신 소스대로 실행해서는, OnDrawItem 이벤트는 발생하겠지만, 리스트뷰에 아무것도 안그려질 것으로
: 생각됩니다. 왜냐하면.. 텍스트를 안그려줬으니까요.
: ListView1->Canvas->TextRect(Rect, Rect.Left+2, Rect.Top, Item->Caption);
: 이와 같이 텍스트를 그리는 코드를 추가해주세요.
:
: 그럼 이만...
:
:
: 김병은 님이 쓰신 글 :
: : 정말 초보적인 질문입니다.
: :
: : New Project를 해서 Form에 ListView에 아이템을 하나를 추가 해놓고,
: : OwnerDraw를 true로 하면 아래의 OnDrawItem이벤트가 일어나야 하잖습니까?
: : 저도 그렇게 알고 있는데..이벤트가 일어나지 않네요..
: : 다른 옵션을 정해 주어야 하는 것 있습니까?
: :
: : //------------------------------------------------------------------
: : void __fastcall TForm1::ListView1DrawItem(TCustomListView *Sender,
: : TListItem *Item, TRect &Rect, TOwnerDrawState State)
: : {
: : ListView1->Canvas->Font->Color = clRed;
: : ListView1->Canvas->Brush->Color = clWhite;
: : ListView1->Canvas->FillRect(Rect);
: : }
: : //------------------------------------------------------------------
: :
: : 단순히 폼위에 ListView하나와 ImageList 하나만 올러 놓고 Test 하는데 않돼네요.
: : 감사합니다. 도와 주세요.
|