![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Скрыть заголовок формы [WinXP]
Anar © (2002-10-30 16:31:00)Как скрыть заголовок формы и чтоб при этом она оставалась трёхмерной. Если сделать BorderStyle None, то форма не имеет 3d краёв. Как сделать трёхмерные края?
Aristarh (2002-10-30 16:37:00) [1]procedure ShowTileBar(fmForm: TForm);
var Save: Longint;
Begin
With fmForm do
Begin
if BorderStyle = bsNone then Exit;
Save := GetWindowLong(Handle, GWL_STYLE);
if (Save and WS_CAPTION) <> WS_CAPTION then
begin
case BorderStyle of
bsSingle, bsSizeable:
SetWindowLong(Handle, GWL_STYLE, Save or WS_CAPTION or
WS_BORDER);
bsDialog:
SetWindowLong(Handle, GWL_STYLE, Save or WS_CAPTION or
DS_MODALFRAME or WS_DLGFRAME);
end;
Height := Height + GetSystemMetrics(SM_CYCAPTION);
Refresh;
end;
End;
End;
Procedure HideTileBar(fmForm: TForm);
var Save: Longint;
begin
With fmForm do
Begin
if BorderStyle=bsNone then Exit;
Save := GetWindowLong(Handle, GWL_STYLE);
if (Save and WS_CAPTION) = WS_CAPTION then
begin
case BorderStyle of
bsSingle, bsSizeable:
SetWindowLong(Handle, GWL_STYLE, Save and (not WS_CAPTION) or
WS_BORDER);
bsDialog:
SetWindowLong(Handle, GWL_STYLE, Save and (not WS_CAPTION) or
DS_MODALFRAME or WS_DLGFRAME);
end;
Height := Height-GetSystemMetrics(SM_CYCAPTION);
Refresh;
end;
End;
end;