Вниз
Скачать: CL | DM;

onPaint в TListView   Найти похожие ветки 

← →
SH ©   (2003-10-20 14:06) [0]

Гружу картинку на канвас TListView. Как избежать её порчи при перерисовке окна? Метод onPaint у ListView отсутсвует. ListView занимает у меня всю форму (align=klient)


← →
ZEE ©   (2003-10-20 14:17) [1]

OnPaint у TListView???
а может dct-nfrb OnCustomDraw...


← →
SH ©   (2003-10-20 14:25) [2]

>ZEE ...OnCustomDraw
Я гружу настоящую большую катинку, не иконку, через TBitMap.


← →
ZEE ©   (2003-10-20 14:35) [3]

>SH
ну и какая разница - хоть иконка, хоть картинка - все равно OnPaint у TListView нету...


← →
clickmaker ©   (2003-10-20 14:42) [4]

Как вариант можно подменить WindowProc и обрабатывать WM_ERASEBKGND


← →
SH ©   (2003-10-20 18:42) [5]

>clickmaker © (20.10.03 14:42) [4]
Можно пример такой замены?


← →
clickmaker ©   (2003-10-20 18:51) [6]

var OldWndProc: TWndMethod;

OldWndProc := ListView.WindowProc;
ListView.WindowProc := NewWndProc;

procedure TForm1.NewWndProc(var Message: TMessage);
begin
if (Message.Msg = WM_ERASEBKGND) then
// заливаешь фон на HDC(Message.wParam)
...
Message.Result := 1;
end else
OldWndProc(Message);
end


← →
SH ©   (2003-10-20 19:02) [7]

>clickmaker © (20.10.03 18:51) [6]
> // заливаешь фон на HDC(Message.wParam)

1) BitMap.loadfromfile(); здесь не пройдёт?
2) Окошко соxранит стиль WinXP?


← →
clickmaker ©   (2003-10-20 19:08) [8]

1)

Canvas := TCanvas.Create;
Canvas.Handle := HDC(Message.WParam);
Canvas.Draw(x, y, Bitmap);



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
7-36852
UserForever
2003-10-08 20:08
2003.12.12
Метка диска


14-36829
Holy
2003-11-07 15:53
2003.12.12
ПДУ для PC


1-36728
Makhanev A.S.
2003-12-02 00:51
2003.12.12
Как Windows присваивает Handle Окнам?


1-36710
timM
2003-12-03 12:34
2003.12.12
fsMDIForm и Dll


1-36639
SDW_syscoder
2003-12-01 09:56
2003.12.12
Преобразование HEX-кода в ASCII




   Наверх