![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
как убрать иконку окна? [D7]
Alex_Y © (2007-08-08 08:24:00)как убрать иконку окна?
homm (2007-08-08 11:42:00) [1]> Если есть CreateParams, значит, есть и BorderIcons.
Может я чего не помню уже, но WinApi вроде нет функций, структур, чего-либо с названием CreateParams.
Однокамушкин (2007-08-08 11:30:00) [2]
> Юрий Зотов © (08.08.07 10:55) [4]
> Не проще ли выставить BorderIcons?
Проще... совсем забыл про это :)
Юрий Зотов (2007-08-08 11:03:00) [3]> homm © (08.08.07 10:57) [5]
И что?
Если есть CreateParams, значит, есть и BorderIcons. А тогда и незачем стрелять из пушки по воробьям.
homm (2007-08-08 10:57:00) [4]> [4] Юрий Зотов © (08.08.07 10:55)
> Не проще ли выставить BorderIcons?
Ветка из WinAPI
Юрий Зотов (2007-08-08 10:55:00) [5]Не проще ли выставить BorderIcons?
Однокамушкин (2007-08-08 09:04:00) [6]Перекройте CreateParams у формы и реализуйте его так:
procedure TForm1.CreateParams(var Params: TCreateParams);
begin
inherited CreateParams(Params);
Params.Style := Params.Style and not WS_SYSMENU;
end;
Alex_Y (2007-08-08 08:58:00) [7]убрать полностью все кнопки вполне подходит
а как удалить стиль?
Однокамушкин (2007-08-08 08:45:00) [8]Самый простой способ - нарисовать полностью прозрачную иконку в Image Editor-е, созхранить её в ico-файл и загрузить его в свойство Icon формы, визуально иконка исчезнет... Но с точки зрения системы она останется, щёлчок на её области всё равно будет приводить к появлению системного меню... Можно убрать стиль WS_SYSMENU из стиля окна, но тогда вместе с иконкой и меню из заголовка уберутся кнопки минимизации, максимизации и закрытия... Если вас это не устраивает, можно имитировать их своими силами, обрабатывая WM_NCPAINT, WM_NCLBUTTONDOWN и т.п. Тут есть полезная функция DrawFrameControl, которая рисует системные кнопки так, как их рисует сама система, надо только поставить правильные размеры (их можно узнать с помощью функции GetSystemMetrics)... Ну или можно найти готовый компонент, который рисует любые кнопки на заголовке и использовать его, когда-то я видел такой на www.toryy.net, кажется, он назывался TWidgetBtn