в структуру WNDCLASS дескриптора загруженного
Помещение в структуру WNDCLASS дескриптора загруженного ранее значка осуществляется в замещенной нами функции класса TWindow GetWindowClass() (подробности см. в гл. 26):
void MyWindow::GetWindowClass(WNDCLASS&wc){
TWindow::GetWindowClass(wc);//Вызываем исходную функцию GetWindowClass
we.hIcon=hIcon;//Устанавливаем наш значок в структуре NNDCLASS
}
Дескриптор hIcon введен в класс MyWindow в качестве закрытого члена. Такое построение программы повышает ее наглядность, но несколько увеличивает объем. Поскольку, как и в рассмотренном выше случае с указателем на объект диалогового окна, дескриптор hIcon используется в программе лишь в одном месте, можно исключить его явное объявление среди данных-членов класса MyWindow и получить в неявном виде прямо в функции GetWindowClass(), совместив в одном предложении и загрузку ресурса, и занесение его дескриптора в структуру WNDCLASS:
we.hIcon=GetApplication()->TModule::LoadIcon("MyIcon") ;
В этом варианте отпадает необходимость загружать ресурс-значок в конструкторе главного окна.
Диалоговые окна_________________________________________________ 257
Модальный диалог с органами управления и функциями отклика
В примере 28-2 рассматривается простая (и крайне несовершенная) программа, создающая набор "карточек" с данными о сотрудниках некоторого предприятия. Карточки заполняются с помощью модального диалогового окна, в котором предусмотрен ряд органов управления: несколько полей для ввода текста, а также альтернативные и нажимаемые кнопки (рис. 28.3). Созданный набор карточек (базу данных) можно записать на диск в файл с произвольным именем и заданным расширением dbf; можно также прочитать и вывести на экран содержимое файла с базой данных.
При обсуждении текста программы мы коснемся следующих вопросов:
• создание модального диалога с разнообразными органами управления
• обработка сообщений от органов управления диалогового окна
• использование буфера обмена для обмена данными между главным и диалоговым окнами
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий