Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.06.27;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.015 c
1-88922
ZIP
2002-06-15 02:10
2002.06.27
Путь к узлу в TTreeView


3-88775
Александр 03
2002-06-05 10:50
2002.06.27
Временные файлы BDE


3-88765
SKing
2002-06-04 10:18
2002.06.27
Sweep с помощью IBX ?


1-88803
Shadow
2002-06-16 20:22
2002.06.27
Как сосчитать кол-во одинаковых символов в строке?


14-89017
OOPS!!
2002-05-23 15:25
2002.06.27
Photoshop, Winamp, CorelDraw, 3DStudio, Half-Life, Quake, ACDSEE.