Кнопка заголовка активного окна
{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}