На этом шаге мы рассмотрим стили окон.
При создании окна или диалогового окна можно установить различные флаги для определения его внешнего вида, границ, существования полос прокрутки, возможности разворачивать окно на весь экран и т. д. Для создания окон с определенными свойствами можно использовать редактор окон и диалоговых окон (Window and Dialog editor). Все флаги имеют префикс wsf_. После того как вы создадите окно, флаги стиля окна могут быть получены вызовом предиката win_GetState. Некоторые флаги могут быть изменены вызовом предиката win_SetState. В таблице 1 перечислены все возможные значения флагов стилей.
Флаг стиля | Значение |
---|---|
wsf_Border | Окно получает тонкую границу |
wsf_SizeBorder | Окно получает двойную границу, которая используется для изменения размеров окна |
wsf_DlgBorder | Окно получает границу, как у диалогового окна. Размер окна не может быть изменен |
wsf_Close | Окно получает системное меню, которое обычно используется для закрытия окна |
wsf_Maximize | Окно получает кнопку максимизации. Этот флажок не устанавливаеся, если размер окна не должен быть изменен |
wsf_Minimize | Окно получает кнопку минимизации |
wsf_HScroll | Окно получает горизонтальную полосу прокрутки |
wsf_VScroll | Окно получает вертикальную полосу прокрутки |
wsf_TitleBar | Окно получает строку заголовка |
wsf_Visible | Окно изначально является видимым (значение по умолчанию) |
wsf_Invisible | Окно должно быть создано невидимым |
wsf_Enabled | Окно должно быть создано активизированным (задано по умолчанию) |
wsf_Disabled | Окно должно быть создано неактивизированным |
wsf_Maximized | Окно должно быть создано развернутым на весь экран |
wsf_Minimized | Окно должно быть создано свернутым в пиктограмму |
wsf_Restored | Этот флажок используется для восстановления окна из развернутого или свернутого состояния |
wsf_ClipChildren | Изображение за пределами дочерних окон должно быть отсечено. Этот флажок нужно установить при создании родительского окна |
wsf_ClipSiblings | Отсечение должно быть выполнено при перекрытии дочерних окон. Этот флажок может использоваться только для дочерних окон |
wsf_NoClipSiblings | Сбрасывает флажок wsf_ClipSiblings |
wsf_Topmost | Окно должно быть расположено поверх всех окон |
wsf_Transparent | Окно должно быть прозрачным |
На следующем шаге мы рассмотрим клиентскую область окон и различные виды окон.