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

Как нарисовать бордюрчик другим цветом?   Найти похожие ветки 

 
Александр_30   (2002-04-27 11:49) [0]

Уважаемые мастера! Понадобилось перерисовать бордюрчик на PageControl, но что-то не идет. Ниже приведен программный крд в методе onCreate формы. Понять не могу, где я что не так делаю...

private
dc: Hdc;
Pen :hPen;
OldPen :hPen;
OldBrush :hBrush;
btnrgn: hRgn;
............................
implemenation
............................
procedure TForm1.FormCreate(Sender: TObject);
begin
PageControl1.Brush.Style := bsSolid;
dc:= GetWindowDC(PageControl1.Canvas.Handle);
GetWindowRgn(PageControl1.Handle, btnrgn);
Pen := CreatePen(PS_SOLID, 1, RGB(100, 135, 142));
OldPen := SelectObject(dc, Pen);
OldBrush := SelectObject(dc, GetStockObject(NULL_BRUSH));

FrameRgn(dc, btnrgn,pen,PageControl1.Width, PageControl1.Height);

SelectObject(dc, OldBrush);
SelectObject(dc, OldPen);
DeleteObject(Pen);
ReleaseDC(PageControl1.Handle, PageControl1.Canvas.Handle);
end;


-------------------------------
С уважением ко всем!


 
Cobalt ©   (2002-04-28 23:36) [1]

Вам нужно перерис овать(один раз) или перерис овывать(всегда)?
Если всегда, то пишите наследник компонента.
А вообще-то все у вас работает.
Вы ПРОСТО не успеваете это заметить, т.к. после OnCreate еще как минимум один раз форма перерисовыается.


 
Александр_30   (2002-04-29 11:23) [2]

Мне надо, чтоб енто чудище было просто с другим цветом рамки после создания формы :)


 
Cobalt ©   (2002-04-29 18:13) [3]

Таки вы не ответили (или я не понял?)
После создания - это "сразу после создания" и "далее всегда"?
Тогда пишите наследника, ищите, где он отрисовывает рамку, и замещайте своим обработчиком.



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

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



Память: 0.45 MB
Время: 0.009 c
4-89078
JaMin
2002-04-29 20:51
2002.06.27
Как послать окну Сеанса ДОС код функц-ой клавиши?


1-88931
dimonf
2002-06-14 23:11
2002.06.27
Как послать через модем на факс информацию?


7-89062
gamers_must_die
2002-03-31 18:58
2002.06.27
Как отслеживать запуск программ?


1-88851
vajo
2002-06-17 14:50
2002.06.27
Большой текстовый файл


1-88880
_aero_
2002-06-13 02:15
2002.06.27
проблема с TFrame




   Наверх