Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как, зная Handle TLabel, нарисовать на ней что-нибудь (изображение)


Alexander ©   (2002-03-20 13:19:00) 

?


MAxiMum   (2002-03-20 15:45:00) [1]

А теперь всё проще простого. Ну так и пошди ему метод WM_PAINT, чтобы он обновился.


Alexander   (2002-03-20 15:26:00) [2]

С рисованием разобрался.

Не получается сразу показать рисунок.

Код в WM_PAINT работает, то есть рисунок рисуется, когда окошко перерисовывается, а при первом показе - нет.

ShowWindow(GetDlgItem(hWndDlg, 250), SW_Show);
DC :=GetDC(GetDlgItem(hWndDlg, 250));
try
Bitmap := TBitmap.Create;
Bitmap.LoadFromFile("D:\Image.bmp");
BitBlt(DC, 0, 0, 100, 100, Bitmap.Canvas.Handle, 0, 0, SrcCopy);
Bitmap.Free;
finally
ReleaseDC(0,DC);
end;


Alexander   (2002-03-20 14:51:00) [3]

Примерно так?

Canv := TCanvas.Create;
Bitmap := TBitmap.Create;
Bitmap.LoadFromFile("C:\Image.bmp");
Canv.Handle := GetDlgItem(hWndDlg, 250);
Canv.Draw(0, 0, Bitmap);
Bitmap.Free;
Canv.Free;


Юрий Зотов   (2002-03-20 13:52:00) [4]

Static - это не TLabel, это нормальное окно. Зная его Handle, получаем его DC и на нем рисуем. Все как обычно.


Alexander   (2002-03-20 13:33:00) [5]

Это я и имел в виду.
У меня в файле ресурсов *.rc описан элемент "Static"


MBo   (2002-03-20 13:26:00) [6]

а нет у нее handle :(
у TStaticText есть.
А для изображений, может, сто другое подойдет?


Наверх

Титульная страница Поиск, карта сайта Написать письмо