![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как, зная 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 есть.
А для изображений, может, сто другое подойдет?