Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Немодальная диалоговая панель

Читайте также:
  1. Аналогия между математической Диосценой и панелью отображения информации
  2. Возведение крупнопанельных зданий. Монтаж элементов покрытий и перекрытий.
  3. Возведение крупнопанельных зданий. Установка наружных и внутренних панелей стен.
  4. Лампы, переключатели, приборная панель.
  5. Модальная диалоговая панель
  6. Обратите внимание на панель Свойства. В пункте ссылка указан URL-адрес веб-страницы.

Процедура создания и использования немодальной диалоговой панели несколько отличается от процедуры создания модальной диалоговой панели.

Как и в случае с модальной диалоговой панелью, в первую очередь необходимо создать шаблон диалоговой панели и добавить его в файл ресурсов приложения. Затем нужно создать класс CDlg, управляющий диалоговой панелью, - класс диалоговой панели. Этот класс наследуется непосредственно от базового класса CDialog. Затем можно модифицировать шаблон и класс панели для нужд приложения.

В классе немодального диалога следует переопределить метод Create базового класса CDialog следующим образом:

 

void CDlg::Create(CWnd* pParent)

{ CDialog::Create(IDD,pParent); } // Вызов метода базового класса Parent=pParent; - окно-родитель

 

Предварительно в класс диалога необходимо добавить элемент Parent - указатель на родительский объект, например, CWnd *Parent - указатель на родительское окно. Если родительский объект не окно, то можно добавить в метод Create параметр, отвечающий за передачу указателя на родительский объект, и присвоить его переменной Parent, объявив его в определении класса как указатель на объект соответствующего типа. Указатель на родительский объект позволяет при необходимости вызывать для родительского объекта методы его класса непосредственно из методов класса диалога, что обеспечивает связь немодального диалога и его родительского объекта.

Метод Create возвращает управление сразу после отображения на экране диалоговой панели. Он возвращает ненулевое значение, если создание диалоговой панели завершилось успешно, и нуль в противном случае.

При помощи ClassWizard в классе CDlg также следует создать заготовки методов-обработчиков сообщений от кнопок IDOK(OnOK) и IDCANCEL (OnCancel),для сообщения WM_DESTROY (OnDestoy).

В момент создания объекта класса CDlg диалоговая панель как окно еще не создана и не появляется на экране. Для этого надо вызвать метод Create класса CDlg. Если диалоговая панель имеет стиль WS_VISIBLE, то она сразу появляется на экране. В противном случае для этого надо вызвать метод ShowWindow. Итак, в методе, который вызывает немодальный диалог (например, в методе-обработчике какого-либо сообщения для окна приложения), следует проверить, не отображается ли уже эта диалоговая панель, а затем создать ее методом Create класса CDlg:

 

if(Dlg.GetSafeHwnd()==NULL)

Dlg.Create(this);

Чтобы закрыть немодальную диалоговую панель, можно воспользоваться методом DestroyWindow:

if(Dlg.GetSafeHwnd()!=NULL)

Dlg.DestroyWindow();


Дата добавления: 2015-09-03; просмотров: 71 | Нарушение авторских прав


Читайте в этой же книге: Соглашения о вызовах | Стандартные элементы управления | Новое поколение Windows. Передача информации с помощью сообщений. Независимость от драйверов аппаратуры. Plug-and-play. Библиотеки динамической компоновки. 16 бит против 32 бит. | Новое поколение Windows. Различные аппаратные платформы. Различные программные платформы. Многопроцессорные системы. Гибкость. | Требования к программному и аппаратному обеспечению Windows приложений. Требования к программному обеспечению. Требования к аппаратуре. | Логическая система координат | Доступ к оболочке Windows. Поля вывода. Изменение пределов поля вывода и окна. Координаты, определяемые пользователем. Выбор начальных атрибутов окна. | Некоторые функции, имеющие отношение к сообщению WM_PAINT. | Вывод окна. Изменение вида окна. Часто используемые элементы управления и диалоговые окна. Статические элементы управления. Элементы управления - кнопки. | Модальная диалоговая панель |
<== предыдущая страница | следующая страница ==>
Подготовительные работы и допуск к работе| Схема последовательного технологического процесса

mybiblioteka.su - 2015-2024 год. (0.006 сек.)