Кнопка заголовка активного окна

{codecitation class=»brush: pascal; gutter: false;» width=»600px»}

Вы должны сами рисовать кнопку и обрабатывать ее перерисовку для показа вдавленного состояния. Затем, для активизации кнопки, вам необходимо реагировать на сообщение WM_NCHITTEST. Вот пример кода, рисующего безобразный зеленый контур вокруг красного прямоугольника около системного меню:

procedure TForm1.WMNCPaint(var Msg: TWMNCPaint);

var

R: TRect;

begin

inherited;

Canvas.Handle := GetWindowDC(Handle);

R := Bounds(GetSystemMetrics(SM_CXFRAME)

GetSystemMetrics(SM_CXSIZE) 1,

GetSystemMetrics(SM_CYFRAME),

GetSystemMetrics(SM_CXSIZE),

GetSystemMetrics(SM_CYSIZE));

with Canvas do

begin

Brush.Color := clRed;

Pen.Color := clLime;

Rectangle(R.Left, R.Top, R.Right, R.Bottom);

end;

ReleaseDC(Handle, Canvas.Handle);

end;

{/codecitation}

Добавить комментарий