Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Диалоговое окно выбора цветаСодержание книги
Поиск на нашем сайте Окно выбора цвета (рис. 3.4) позволяет выбрать цвет из системной палитры или задать новый цвет. Окно вызывается функцией ChooseColor, которой передается указатель на структуру CHOOSECOLOR. В этой структуре задаются параметры окна, а после закрытия приложение может извлечь из нее (переменная rgbResult) сведения о выбранном цвете.
Диалоговое окно выбора шрифта В окне выбора шрифта (рис. 3.5) пользователь может указать имя шрифта, его стиль, размер, особые эффекты отображения и цвет. Этой функции передается указатель на структуру CHOOSEFONT. Ее переменная lpLogFont является указателем на структуру LOGFONT, которую можно использовать для инициализации диалогового окна и для получения информации о выбранном шрифте после закрытия окна. Для создания шрифта (это одна из разновидностей объектов модуля GDI) структуру LOGFONT можно непосредственно передать функции GDI – CreateFontIndirect. Диалоговые окна для печати и настройки параметров страницы В диалоговом окне печати (рис. 3.6) объединены возможности печати и настройки принтера. Для выбора формата и источника бумаги предназначено отдельное окно, окно макета страницы (рис. 3.7).
Диалоговое окно печати создается функцией PrintDlg, а инициализируется с помощью структуры PRINTDLG. Окно макета страницы вызывается функцией PageSetupDlg, которая в качестве параметра принимает параметра указатель на структуру PAGESETUPDLG. С помощью этой структуры приложение может управлять содержимым элементов управления и после закрытия окна считывать данные, введенные пользователем.
Диалоговые окна для контекстного поиска и замены текста Окна для поиска (рис. 3.8) и замены (рис. 3.9) текста обеспечивают удобный интерфейс для выполнения этих операций в приложениях, работающих с текстовыми документами. Это немодальные окна, в отличие от всех остальных стандартных диалоговых окон. Поэтому приложение, создавшее окно поиска или замены, ответственно за диспетчеризацию сообщений для этого окна функцией IsDialogMessage. Окно поиска выводится на экран функцией FindText. Она возвращает дескриптор диалогового окна, который приложение может использовать в цикле обработки сообщений при вызове IsDialogMessage. Окно поиска инициализируется и сохраняет введенные пользователем значения в структуре типа FINDREPLACE. Немодальное диалоговое окно общается с окном-владельцем через набор сообщений. Перед вызовом FindText, приложение должно функцией RegisterWindowMessage зарегистрировать новую строку-сообщение "FINDMSGSTRING". Окно поиска будет посылать это сообщение приложению каждый раз, когда пользователь введет новую строку для поиска.
Окно замены (рис. 3.9) похоже на окно поиска и инициализируется тоже с помощью структуры FINDREPLACE. Для вывода этого окна на экран предназначена функция ReplaceText. Когда приложение получает сообщение от окна поиска или замены, оно может проверить переменную Flags в структуре FINDREPLACE, чтобы определить, какое именно действие было запрошено пользователем. Окна поиска и замены не уничтожаются после возврата из функции FindText или ReplaceText. Поэтому приложение должно гарантировать, что переданная этим функциям переменная типа FINDREPLACE будет существовать в течение всего времени работы окон. Если эта переменная будет уничтожена до уничтожения диалогового окна, то приложение будет завершено вследствие недопустимой операции доступа к несуществующей области памяти.
Элементы управления Элемент управления – это дочернее окно специального типа, обычно применяемое для того, чтобы пользователь мог с его помощью выполнить какое-то простое действие. В результате этого действия элемент управления посылает окну-владельцу сообщение. Например, у нажимаемой кнопки единственная простая функция, а именно, когда пользователь нажимает кнопку, то она посылает своему окну-владельцу (диалоговому окну) сообщение WM_COMMAND. В Windows есть набор стандартных классов элементов управления. Некоторые из них показаны в диалоговом окне на рис. 3.10.
В Windows 95 появился набор новых элементов, которые, чтобы отличать их от элементов управления старых версий Windows, иногда называются стандартными элементами управления Windows 95 (рис. 3.11). Приложения могут создавать собственные элементы управления. Их можно наследовать от стандартных оконных классов или разработать "с нуля". Класс элемента управления и стиль (например, стиль задает разновидности кнопки – нажимаемая, с зависимой фиксацией и др.) задаются в файле ресурсов. При необходимости приложения могут создавать элементы управления как обычные окна, функцией CreateWindow. При этом необходимо в явном виде, как параметры функции, указывать имя оконного класса и стиль элемента управления.
|
||||||||||||||||||
Последнее изменение этой страницы: 2016-08-01; просмотров: 352; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.146.107.152 (0.006 с.) |