![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как убрать синюю полоску вверху окна
Bless © (2003-09-19 16:31:00)
Что передавать API-функции CreateWindow в качестве третьего параметра dwStyle, чтобы на появлялась синяя(у меня) полоска вверху окна(title bar, кажется)?
И еще такой вопрос.
Вот цитата из хелпа:
WS_CAPTION Creates a window that has a title bar (includes the WS_BORDER style).
WS_DLGFRAME Creates a window that has a border of a style typically used with dialog boxes. A window with this style cannot have a title bar.
Если я правильно все перевел, то если стиль окна - WS_CAPTION,
то у него будет title bar, а если среди стилей присутсвует WS_DLGFRAME, то title bar быть не может.
Но в Window.pas WS_CAPTION=WS_DLGFRAME or WS_BORDER.
Как это понимать?
И еще. WS_OVERLAPPED = 0. Так что, стиль WS_OVERLAPPED вообще не используется? Ведь xxx OR 0 =xxx.
Bless (2003-09-23 16:43:00) [1]
:)
Ладно. Спасибо за ответы.
Игорь Шевченко (2003-09-23 16:18:00) [2]
Bless (23.09.03 15:45)
Пофлеймить охота ? В чат :)
Bless (2003-09-23 15:45:00) [3]
>Не должно. Впрочем, это вопрос к MS
Согласно документации должно. Ошибка в документации?
Игорь Шевченко (2003-09-23 12:37:00) [4]
> А противоречие здесь в том, что если написать
> WS_DLGFRAME or WS_BORDER, то это должно бы означать
> с border-ом и без tytle bar-а.
Не должно. Впрочем, это вопрос к MS
имя (2003-09-23 10:09:00) [5]
Удалено модератором
Bless (2003-09-23 09:21:00) [6]
Я в последнем своем сообщении опечатался. Правильно так:
...
> WS_CAPTION - окно имеет TYTLE BAR
> WS_DLGFRAME - не может иметь TYTLE BAR
...
А противоречие здесь в том, что если написать
WS_DLGFRAME or WS_BORDER, то это должно бы означать
с border-ом и без tytle bar-а.
А если написать
WS_CAPTION - то с border-ом и с tytle bar-ом.
Хотя эти две записи дают одинаковую комбинацию битов.
Игорь Шевченко (2003-09-22 17:28:00) [7]
Bless (22.09.03 15:46)
> 2)
> Какой смысл в стиле WS_OVERLAPPED равном 0?
Для того, чтобы отличить от WS_POPUP равного $80000000 или WS_CHILD равного $40000000
> 1)
> Как объяснить противоречие:
> WS_CAPTION - окно имеет border
> WS_DLGFRAME - не может иметь border.
> Но WS_CAPTION =(WS_DLGFRAME or WS_BORDER)
WS_DLGFRAME - не может иметь Title bar
а какое здесь противоречие ? WS_CAPTION обрабатывается системой как совокупность битов, а не по отдельности.
Bless (2003-09-22 15:46:00) [8]
Спасибо! Работает!
А как насчет остальных двух вопросов?
1)
Как объяснить противоречие:
WS_CAPTION - окно имеет border
WS_DLGFRAME - не может иметь border.
Но WS_CAPTION =(WS_DLGFRAME or WS_BORDER)
2)
Какой смысл в стиле WS_OVERLAPPED равном 0?
Игорь Шевченко (2003-09-22 13:48:00) [9]
Без синей полоски могут быть только POPUP или CHILD окна.
mike.dld (2003-09-22 13:32:00) [10]
А ты не пробовал передавать (WS_POPUP or WS_BORDER)???
Bless (2003-09-22 10:04:00) [11]
>DVM © (19.09.03 19:33) [1]
>WS_BORDER или WS_CAPTION не использовать - заголовка и бордюра не
>будет.
Так я и не использую. Ставил ws_dlgframe. Все равно окно с "бордюром" получается.
DVM (2003-09-19 19:33:00) [12]
WS_BORDER или WS_CAPTION не использовать - заголовка и бордюра не будет.