Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.01.08;
Скачать: CL | DM;

Вниз

Пользовался кто нибудь функцией PaintTo для прорисовки WinControl ов на канвас битмэпа? Помогите! У меня ничего не получается.   Найти похожие ветки 

 
Kost   (2001-12-14 14:10) [0]

Пользовался кто нибудь функцией PaintTo для прорисовки WinControl"ов на канвас битмэпа? Помогите! У меня ничего не получается.


 
valery_f   (2001-12-14 18:16) [1]

Пользовался. Единственное "но" - изначально невидимый WinControl не имеет хэндла и дает эксэпшн при PaintTo. Если это свой компонент - зови CreateHandle, если нет - сделай его видимым потом спрячь - хэндл появится и PaintTo заработает.


 
DK ©   (2001-12-15 03:52) [2]

2valery_f
Можно вопрос:
Как это? Контрол есть, а хэндла нет. Разве такое может быть?


 
Kost   (2001-12-15 13:05) [3]

Имеется форма TForm1. На нее помещена "подопытная кнопка" BitBtn1.
Имеется желание, по нажатию на другую кнопку - Button1 сделать следующее:
- нарисовать изображение BitBtn1 на канвас битмэпа с помощью PaintTo
- вывести полученный битмэп на канву формы

НЕ ПОЛУЧАЕТСЯ! BitBtn1 не рисуется в битмэп! ПОЧЕМУ! ГДЕ Я НЕ ПРАВ?

procedure TForm1.FormCreate(Sender: TObject);
begin
//Создаем битмэп
bmp := TBitmap.Create;
bmp.Width := 150;
bmp.Height := 150;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
//При нажатии на кнопку рисуем BitBtn1 на канвас битмэпа
BitBtn1.PaintTo(bmp.Canvas.Handle, 0, 0);
Invalidate; //Чтобы вызвать перерисовку формы
end;

procedure TForm1.FormPaint(Sender: TObject);
begin
//Выводим на канву формы битмэп
Canvas.Draw(0,0, bmp);
end;


 
DK ©   (2001-12-16 02:26) [4]

Всё работает!!!
Может ты просто не обрабатываешь нажатие на кнопку?
procedure TForm1. Button1Click(Sender: TObject);
procedure TForm1. BitBtn1Click(Sender: TObject);


 
Kost   (2001-12-16 12:12) [5]

И, все таки, не работает. Кнопка в битмэп не рисуется. TPanel рисуется а TButton и TBitBtn нет.



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

Текущий архив: 2002.01.08;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
1-22181
Kost
2001-12-21 11:12
2002.01.08
Как запретить перемещение формы мышю?


1-22030
Андрей Сенченко
2001-12-18 12:49
2002.01.08
Form.OnCloseQuery - Как обработать ?


1-22025
-=DeD=-
2001-12-18 11:20
2002.01.08
Установка ActiveX


4-22487
Rad
2001-11-05 00:40
2002.01.08
Создание макроса в Excel


1-22176
Serg5
2001-12-20 14:57
2002.01.08
Опять проблема с текстом: вывожу на экран Image1.Canvas.TextOut, но под самим текстом белый беграунд. Можно ли если не убрать(просто наложить буквы), то хотя бы беграунд сделать чёрным.