Ресурсы. Файл описания ресурса, страница 15

ФункцияTestDlgProcвфайлеGETNDGI.CСм.     \local-sources\chap08\08-15.txt

GetNextDlgTabltem                              «• Windows 98   *  Windows 2000

Описание

Функция GetNextDlgTabltem ищет следующий (или предыдущий) дескриптор элемента управления диалоговым окном, которое получит фокус ввода, если пользователь нажмет клавишу Tab. При нажатии клавиши Tab фокус ввода переходит на следующий элемент, имеющий стиль WSJTABSTOP. При нажатии комбинации клавиш Shift+Tab фокус ввода передается в противоположном направлении. Функция GetNextDlgTabltem возвращает дес-

криптор элемента управления, который получит фокус ввода при следующем нажатии клавиши Tab или комбинации клавиш Shift+Tab.

 

Синтаксис

HWND GetNextDlgTabItem( HWND hwndDlg, HWND hwndCtl, BOOL bPrevious )

 

Параметры

 

hwndDlg

HWND. Дескриптор диалогового окна.

 

hwndCtl

HWND. Дескриптор элемента управления, который должен быть использован в качестве отправной точки для поиска. Если этот параметр имеет значение NULL, функция использует последний (или первый) элемент управления в диалоговом окне в качестве отправной .точки для поиска.

 

bPrevious

BOOL. Устанавливается в TRUE, если нужно найти предыдущий элемент управления со стилем WS_TABSTOP. Это — элемент, который получит фокус ввода, если пользователь нажмет комбинацию клавиш Shift+Tab. Устанавливается в FALSE, если нужно найти следующий элемент управления WSJTABSTOP. Это — элемент, который получит фокус ввода, если пользователь нажмет клавишу Tab.

 

Возвращаемое значение

HWND. Дескриптор следующего или предыдущего элемента управления диалогового окна, который будет выбран при нажатии клавиши Tab или комбинации клавиш Shift+Tab.

 

Включаемый файл

winuser.h

 

См. также

GetDlgltem, GetNextDlgGroupItem

 

Пример

См. пример для функции GetNextDlgGroupItem.

 

IsDialogMessage                                  • Windows 98   •  Windows 2000

 

Описание

Функция IsDialogMessage определяет, предназначено ли указанное сообщение для данного диалогового окна, и, если это так, обрабатывает это сообщение. На протяжении всего времени, пока отображено немодальное диалоговое окно, в цикле обработки сообщений приложения необходимо следить за тем, отправить ли сообщение в функцию WndProc или в функцию (функции) диалогового окна.

 

Синтаксис

BOOL IsDialogMessage( HWND hwndDlg, LPMSG Ipmsg )

 

Параметры

 

hwndDlg

HWND. Дескриптор диалогового окна. Это — значение, возвращенное функцией CreateDialog. Значение должно храниться в месте, доступном для цикла обработки сообщений в функции WinMain.

 

Ipmsg

LPMSG. Указатель на структуру MSG, полученный от системы Windows с помощью функций GetMessage или PeekMessage.

 

Возвращаемое значение

 

BOOL. TRUE, если сообщение обработано; в ином случае — FALSE.

 

Включаемый файл

winuser.h

 

См. также

GetMessage, CreateDialog

 

Соответствующие сообщения

 

Могут быть обработаны все сообщения окна.

 

Пример

См. пример для функции CreateDialog.

 

IsDlqButtonChecked                               •  Windows 98    •  Windows 2000

Описание

Функция IsDlgButtonChecked позволяет определить, отмечен ли элемент управления флажком или переключателем, и находится ли элемент управления флажком с тремя состояниями в отмеченном, неотмеченном или неопределенном состоянии.

Синтаксис

UINT IsDIgButtonChecked( HWND hwndDlg, int nIDButton )

Параметры

hwndDlg

HWND. Дескриптор диалогового окна.

nIDBiitton

int. Целочисленный идентификатор элемента управления флажком или переключателем.

Возвращаемое значение

UINT. Текущее состояние отметки. Возможные значения этого параметра приведены в табл. 8.4.

Включаемый файл

winuser.h

См. также

CheckDlgButton, CheckRadioButton

Соответствующие сообщения

BM_SETCHECK, BM_GETCHECK

Пример

См. пример для функции CheckDlgButton.

Таблица 8.4. Значения, возвращаемыефункциейIsDlgButtonChecked

 

Значение

Описание

 

BST_UNCHECKED

Кнопка не имеет отметки.

 

BST_CHECKED

Кнопка имеет отметку.

 

BSTJNDETERMINATE

Кнопка находится в неопределенном состоянии (применяется, только если кнопка имеет стиль BS_3STATE или BS_AUTO3STATE).

 

MapDialoqRect                                    •  Windows 98   • Windows 2000

 

Описание

Функция MapDialogRect позволяет преобразовать (отобразить) указанные единицы длины диалогового окна в экранные единицы длины (пиксели). Координаты, указанные в шаблоне диалогового окна, измеряются в базовых единицах длины окна. Эти единицы длины соответствуют одной четвертой ширины символа для координаты х и одной восьмой высоты символа для координаты у. Функция MapDialogRect преобразует прямоугольник, заданный в этих единицах длины, в прямоугольник, заданный в экранных единицах длины. Полученные координаты измеряются относительно левого верхнего угла диалогового окна. Это значит, что левый верхний угол этого прямоугольника будет всегда иметь координаты (0,0).

 

Синтаксис

BOOL MapDialogRect( HWND hwndDlg, LPRECT Iprc )

 

Параметры

 

hwndDlg

HWND. Дескриптор диалогового окна. Эта функция принимает только дескрипторы диалоговых окон, полученных в результате применения одной из функций создания диалоговых окон; дескрипторы других окон являются недопустимыми.

 

Iprc

LPRECT. Указатель на структуру RECT, содержащую координаты диалогового окна в единицах длины окна, которые будут преобразованы в эк-

 

ранные единицы длины. После вызова функции MapDialogRect, данные структуры RECT будут содержать тот же прямоугольник, преобразованный в экранные единицы длины.

 

Возвращаемое значение

BOOL. В случае успешного выполнения возвращаемое значение — TRUE; в ином случае возвращаемое значение — FALSE.

 

Включаемый файл

winuser.h

 

См. также

ScreenToClient, ClientToScreen

 

Соответствующие сообщения

 

WM_SIZE

 

Пример

В следующем примере (рис. 8.8) происходит перемещение элемента управления дочерним окном при щелчке на кнопке I Move или Move It. Функция MapDialogRect преобразует данные RECT из единиц длины окна в экранные единицы длины (пиксели).

 

Определение диалогового окна в файле MAPDLGRT.RC

 

TESTDIALOG   DIALOGEX      20,    20,    156,    68 STYLE   DS  MODALFRAME    |    WS   POPUP    |    WS VISIBLE    |    WS  CAPTION    |    WS   SYSMENU CAPTION   "Test   Dialog" FONT   8,    "MS   Sans   Serif" BEGIN PUSHBUTTON                  "Move   It" ,IDC_MOVEIT, 4 ,4,50,14 PUSHBUTTON                  "I   Move", IDC MOVED, 4 ,23,50,14 PUSHBUTTON                   "Done",IDCANCEL,52,47,50,14,WS  GROUP END