![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
BorderStyle [D6]
Алексей © (2004-11-23 15:38:00)можно ли как-нибудь изменить BorderStyle формы, зная только ее Handle? (конкретно интересеует, как убрать SystemMenu у любой из форм по Handle этой формы)
Piter ne doma (2004-11-25 13:07:00) [1]Это понятно. Но почему VCL при изменении стиля пересоздает окно? Не просто так ведь это, почему не использует SetWindowLong?...
DVM (2004-11-25 10:31:00) [2]
> ты абсолютно уверен?
Т.к. конференция WinAPI то за API-окно уверен абсолютно, делал многократно. За Delphi-форму не ручаюсь. У ней менять надо свойства, а не SetWindowLong применять.
Piter (2004-11-24 19:33:00) [3]DVM © (24.11.04 10:16) [4]
можно и глюков не будет
ты абсолютно уверен? Потому что в свое время у меня глюки были. Правда, далеко не всегда, при определенных стилях, но были.
И второй пункт. Почему тогда борланд уничтожает и заново создает окно при изменении BorderStyle?
DVM (2004-11-24 10:16:00) [4]
> Насколько я знаю - измененить стиль формы нельзя.
можно и глюков не будет
Piter (2004-11-23 23:26:00) [5]Насколько я знаю - измененить стиль формы нельзя. Если это пытаться делать у существующего окна, возможны разнообразные глюки. Поэтому надо уничтожать окно и создавать новое с новыми параметрами стиля, что, кстати, и делает Дельфи при изменении BorderStyle
xAnjel (2004-11-23 15:47:00) [6]Убрать меню
SetWindowLong(Handle,GWL_STYLE,GetWindowLong(Handle,GWL_STYLE) xor WS_SYSMENU);
DVM (2004-11-23 15:41:00) [7]SetWindowLong