Стили класса


Стили класса определяют дополнительные элементы класса окна. Два или несколько стилей могут быть объединены, используя побитовый оператор ИЛИ (OR) (|). Чтобы назначить стиль для класса окна, установите этот стиль в члене style структуры WNDCLASSEX. Стили класса следуют ниже.

Стиль Действие
CS_BYTEALIGNCLIENT Выравнивает рабочую область окна по границе байта (по направлению x). Этот стиль влияет на на ширину окна и его горизонтальное размещение при выводе на экран.
CS_BYTEALIGNWINDOW Выравнивает окно по границе байта (по x направлению). Этот стиль влияет на на ширину окна и его горизонтальное размещение при выводе на экран.
CS_CLASSDC Назначает единый контекст устройства, который совместно используется всеми окнами в классе. Поскольку классы окна - это специальный процесс, то имеется возможность создать окно одного и того же класса для нескольких потоков приложения. Имеется также возможность для потоков попытаться использовать контекст устройства одновременно. Когда это случается, система позволяет только одному потоку успешно закончить его операцию рисования.
CS_DBLCLKSit carefully Отправляет сообщение о двойном щелчке оконной процедуре, когда пользователь щелкает два раза мышью, в то время, когда курсор находится внутри окно, принадлежащего классу.
CS_DROPSHADOW Windows XP: Создает эффект падающей тени на окно. Эффект включается и выключается благодаря флажку SPI_SETDROPSHADOW. Как правило, он включается для маленьких, временных окон типа меню, чтобы подчеркнуть их зависимость в Z-последовательности от других окон.
CS_GLOBALCLASS Устанавливает, что класс окна - класс глобальной переменной приложения. Дополнительную информацию, см. в статье Классы глобальной переменной приложения.
CS_HREDRAW Перерисовывает все окно, если перемещение или регулировка размера изменяют ширину рабочей области.
CS_NOCLOSE Отключает кнопку Закрыть (Close) на системном меню окна.
CS_OWNDC Назначает уникальный контекст устройства для каждого окна в классе.
CS_PARENTDC Устанавливает прямоугольник отсечения дочернего окна его родительского окна так, чтобы дочерний элемент мог рисовать родителя. Окно с битом стиля CS_PARENTDC получает обычный контекст устройства от КЭШа системы контекстов устройства. Кэш не дает дочернему элементу контекст устройства родителя или настройки контекста устройства. Определение CS_PARENTDC увеличивает производительность приложения.
CS_SAVEBITS Сохраняет, как точечный рисунок, часть экранного изображения, затененного окном этого класса. Когда окно удаляется, система использует сохраненный точечный рисунок, чтобы восстановить экранное изображение, включая другие окна, которые были затенены. Поэтому, система не отправляет сообщения WM_PAINT в окна, которые были затенены, если память, используемая точечным рисунком  не сбрасывалась, и если другие экранные операции  не лишили законной силы сохраненное изображение.

Этот стиль полезен для маленьких окон (например, для меню или диалоговых окон), которые показываются краткосрочно на экране, а затем удаляются до того, как происходит другая экранная деятельность. Этот стиль увеличивает время необходимое, чтобы показать на экране окно, потому что система должна сначала распределить память, чтобы сохранить точечный рисунок.

CS_VREDRAW Перерисовывает все окно, если перемещение или регулировка размера изменяют высоту рабочей области.

О связи классов и контекстов смотри статью

Назад в оглавление
На главную страницу

Hosted by uCoz