Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Стиль кнопки
· BS_PUSHBUTTON equ 0 · BS_DEFPUSHBUTTON equ 1 · BS_CHECKBOX equ 2 · BS_AUTOCHECKBOX equ 3 · BS_RADIOBUTTON equ 4 · BS_GROUPBPX equ 7 · BS_LEFTTEXT equ 20H
В программе стиль кнопки определяется следующим образом: STYLBTN equ WS_CHILD+BS_DEFPUSHBUTTON+WS_VISIBLE+S_TABSTOP
Некоторые API-функции
Создает и отображает диалог, содержащий указанное сообщение и заголовок, а также предопределенные пиктограммы и текстовые кнопки.
int MessageBox( HWND hWnd, // дескриптор окна LPCTSTR lpText, // адрес строки текста диалога LPCTSTR lpCaption, // адрес заголовка диалога UINT uType // стиль окна диалога );
2. Функция GetModuleHandleA: Возвращает дескриптор приложения.
HMODULE GetModuleHandle( LPCTSTR lpModuleName // адрес приложения );
3. Функция LoadCursorA: Загружает указанный курсор из исполняемого файла, связанного с экземпляром приложения или файла ресурсов.
HCURSOR LoadCursor( HINSTANCE hInstance, // дескриптор экземпляра приложения LPCTSTR lpCursorName //строка с именем курсора или идентификатор ресурса );
4. Функция LoadIconA:
Загружает указанную пиктограмму из исполняемого файла, связанного с экземпляром приложения, или файла ресурсов.
HICON LoadIcon( HINSTANCE hInstance, // дескриптор экземпляра приложения LPCTSTR lpIconName // строка с именем курсора или идентификатор ресурса );
5. Функция RegisterClassA:
Регистрирует класс окна, атрибуты которого определены в структуре WndClass, для последующего использования. Класс окна может регистрироваться только один раз.
ATOM RegisterClass( CONST WNDCLASS *lpWndClass // адрес структуры окна );
6. Функция CreateWindowExA:
Создает перекрытое, всплывающее или дочернее окно с расширенным стилем.
HWND CreateWindowEx( DWORD dwExStyle, // расширенный стиль окна LPCTSTR lpClassName, // спецификация имени класса окна LPCTSTR lpWindowName, // заголовок окна DWORD dwStyle, // стиль окна int x, // горизонтальная позиция окна int y, // вертикальная позиция окна int nWidth, // ширина окна int nHeight, // высота окна HWND hWndParent, // дескриптор родительского, дочернего окна HMENU hMenu, // дескриптор меню HINSTANCE hInstance, // дескриптор приложения LPVOID lpParam // pointer to window-creation data ); Параметры dwExStyle:
Параметры dwStyle:
7. Функция ShowWindow:
Устанавливает режим отображения заданного окна.
BOOL ShowWindow( HWND hWnd, // дескриптор окна int nCmdShow // режим отображения окна );
Обновляет клиентскую область заданного окна, отправляя ему сообщение WM_PAINT, если область обновления не пуста. Функция отправляет сообщение WM_PAIN напрямую оконной процедуре указанного окна, обходя очередь сообщений приложения. Если область обновления пуста, то сообщение не отправляется.
BOOL UpdateWindow( HWND hWnd // дескриптор окна );
9. Функция GetMessageA: Извлекает сообщение из очереди сообщений вызывающего потока и помещает его в указанную структуру
BOOL GetMessage( LPMSG lpMsg, // адрес структуры с сообщением HWND hWnd, // дескриптор окна UINT wMsgFilterMin, // первое сообщение UINT wMsgFilterMax // последнее сообщение );
10. Функция TranslateMessageA: Преобразует сообщения виртуальных клавиш в сообщения о символах.
BOOL TranslateMessage( CONST MSG *lpMsg // адрес структуры сообщения ); 11. Функция DispatchMessageA:
Передает сообщение оконной функции.
LONG DispatchMessage( CONST MSG *lpmsg // указатель на структуру с сообщением ); 12. Функция ExitProcess:
Завершает процессы и все потоки.
VOID ExitProcess( UINT uExitCode // код выхода для всех потоков );
13. Функция PostQuitMessage:
Указывает Windows, что поток послал запрос на завершение.
VOID PostQuitMessage( int nExitCode // код возврата );
14. Функция DefWindowProc:
Вызывает оконную процедуру по умолчанию для обработки сообщений, которые не обрабатываются приложением.
LRESULT DefWindowProc( HWND hWnd, // дескриптор окна UINT Msg, // сообщение WPARAM wParam, // первый параметр сообщения LPARAM lParam // второй параметр сообщения );
15. Функция SetFocus: Устанавливает фокус на определенное окно. Окно должно быть связано с вызовом нити очереди сообщений. HWND SetFocus ( HWND hWnd // дескриптор окна );
16. Функция SendMessage:
Функция посылает сообщение окну или окна.м. Функция вызывает процедуру окна и не возвращает значения, пока процедура окна не обработает сообщение. LRESULT SendMessage( HWND hWnd, // дескриптор окна UINT Msg, // сообщение для передачи WPARAM wParam, // первый параметр сообщения LPARAM lParam // второй параметр сообщения ); 17. Функция BeginPaint: Функция готовит окно для рисования и заполнения структуры PAINTSTRUCT информацией о рисовании. HDC BeginPaint(HWNDhwnd, // дескриптор окна LPPAINTSTRUCTlpPaint// информация о рисовании);18. Функция EndPaint: Функция отмечает окончание рисования в окне. BOOL EndPaint(HWND hWnd, // дескриптор окна CONST PAINTSTRUCT *lpPaint // данные рисования);19. Функция TextOut: Функция записывает строку символов в определенную позиция, использую текущий шрифт, цвет фона и цвет текста. BOOL TextOut(HDC hdc, // дескриптор int nXStart, // x-координата начала int nYStart, // y-координта начала LPCTSTR lpString, // строка символов int cbString); 20. Функция CreateSolidBrush: Функция создает логическую кисть, у которой есть определенный цвет. HBRUSH CreateSolidBrush(COLORREF crColor // значение цвета кисти);21. Функция SetBkColor: Функция устанавливает текущий цвет фона значением цвета. COLORREF SetBkColor(HDC hdc, // дескриптор COLORREF crColor // значение цвета фона);22. Функция SetTextColor: The SetTextColor function sets the text color for the specified device context to the specified color. COLORREF SetTextColor(HDC hdc, // дескриптор COLORREF crColor // цвет текста);Сообщения ОС Windows
Сообщения, посылаемые списку
Вопросы для подготовки к сдаче лабораторной работы.
Лабораторная работа №4 Разработка оконных приложений с использованием ресурсов
В операционной системе Windows введено понятие ресурса. Ресурс представляет собой некий визуальный элемент с заданными свойствами, хранящийся в исполняемом файле отдельно от кода и данных, который может отображаться специальными функциями. Использование ресурсов дает две вполне определенные выгоды: 1. Ресурсы загружаются в память лишь при обращении к ним, тем самым достигается экономия памяти. 2. Свойства ресурсов поддерживаются системой автоматически, не требуя от программиста написания дополнительного кода. Описание ресурсов хранится отдельно от программы в текстовом файле (rc) и компилируется (res) специальным транслятором ресурсов. В исполняемый файл ресурсы включаются компоновщиком. Транслятором ресурсов в пакете MASM32 является RC.EXE.
Язык описания ресурсов В настоящее время существует большое количество редакторов ресурсов. Перечислим наиболее употребляемые ресурсы: · пиктограммы; · курсоры; · битовая картинка; · строка; · диалоговое окно; · меню; · акселераторы.
|