Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
bilety_update (1).docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
69.85 Кб
Скачать
  1. Стили окна. Приложение, использующее предопределенные в Windows стили окна.

Стиль окна уточняет внешний вид и поведение отдельного окна. Существует 3 основных стиля:

перекрывающийся, временный и дочерний.

  1. Перекрывающийся – используется в качестве главного окна приложения. Имеет заголовок и

рамку. Дополнительно может иметь системное меню, кнопки изменения размера и сворачивания в пиктограмму. Приложение может создавать несколько перекрывающийся окон, одно из которых может содержать другое. Если окно-хозяин сворачивается в пиктограмму, то все окна, которыми он владеет, становятся невидимыми. При уничтожении окна автоматически уничтожаются и все принадлежащие ему окна. Окно, не имеющее владельца, располагается в любом месте экрана и имеет любые размеры. Подчиненные окна всегда располагаются на поверхности окна владельца. Координаты создаваемых перекрывающихся окон указываются по отношению ко всему экрану.

  1. Временные – используются для вывода информационных сообщений. Они могут не иметь

заголовка. Все свойства, связанные с владельцем и расположением на экране перекрывающихся окон справедливы и для временных.

  1. Дочерние - используются для создания органов управления, таких как кнопки и переключатели. В отличие от перекрывающийся окон, дочерние окна не имеют изначально ни рамки, ни заголовка. Дочерние окна сами рисуют все, что в них изображается. Они всегда располагаются на поверхности окна-родителя. Дочерние окна не выходят за пределы родительского окна и перемещаются вместе с ним. При создании дочернего окна начало системы координат находится в левом верхнем углу окна-родителя.

Таблица стилей.

  1. Стандартный стиль перекрывающихся окон:

WS_OVERLAPPERDWINDOW = WS_OVERLAPPED;

WS_CAPTION;

WS_SYSMENU;

WS_THICKFRAME;

WS_MINIMIZBOX;

WS_MAXIMIZBOX;

  1. Стандартный стиль всплывающего окна:

WS_POPUPWINDOW = WS_POPUP;

WS_VORDER;

WS_SYSMENU;

WS_CHILD – базовый стиль дочернего окна.

Элементы управления. Windows регистрирует несколько предопределенных классов окна. Приложение может создавать окна на базе предопределенных классов. Имена простейших классов:

Button – кнопка;

Edit – текстовый редактор;

Static – надпись;

Listbox – список;

Scrollbar – полоса прокрутки;

Combobox;

Пример: Приложение, создающее в своем окне однострочный редактор текста и кнопку с надписью “OK”. После ввода текста и нажатия кнопки на экране появляется сообщение, состоящее из введенного текста. До функции WinMain определяем именованные константы:

#define ID_EDIT 1;

#define ID_BUTTON 2;

LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wp, LPARAM lp)

{

static HWND hEdit;

static HWND hButton;

switch (msg)

{

case WM_CREATE:

{

hEdit = CreateWindow(“edit”, NULL, WS_CHILD | WS_VISIBLE | WS_BORDER | ES_LEFT, 30, 30, 300, 30, hwnd, (HMENU)ID_EDIT, NULL);

hButton = CreateWindow(“button”, NULL, WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, 50, 50, 100, 100, hwnd, (HMENU)ID_BUTTON, NULL);

return 0;

}

break;

case WM_SETFOCUS:

{

SetFocus(hEdit);

return 0;

}

break;

case WM_COMMAND:

{

if (wp == ID_EDIT)

if (HIWORD(lp) == EN_ERRSPACE)

MessageBox(hwnd, “мало памяти”, “”, MB_OK);

else if (wp == ID_BUTTON)

{

BYTE chBuff[80];

WORD Text;

*(WORD*) chBuff = sizeif(chBuff); // запись в первое слово буфера его // размера в байтах

cbText – SendMessage(hEdit, EM_GETLINE, 0, (LPSTR)chBuff);

chBuff[cbText] = ‘\0’;

MessageBox(hwnd, chBuff, “”, MB_OK);

return 0;

}

} }

}

Стиль

Описание

BS_3STATE

Переключатель с 3ия состояниями: включено, выключено, неактивно.

BS_AUTO3STATE

3 состояния: состоянии переключаются автоматически.

BS_AUTOCHECKBOX

Состояния меняются автоматически.

BS_AUTORADIOBUTTON

Состояния меняются автоматически.

BS_CHECKBOX

2 состояния: включено/выключено.

BS_DEFPUSHBUTTON

Командная кнопка.

BS_GROUPBOX

Прямоугольная область с заголовком.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]