<<
>>

Активизация окна диалога

Для того чтобы отобразить окно диалога на экране и выполнить с его помощью некоторую работу, используется функция DialogBoxParamA. Эта функция имеет сле- дующий формат (в нотации C/C++): int DiаlоgВохРаrаm (НINSТАNСЕ hlпstапсе,//дескриптор приложения LРСТ5ТR 1рТеmрlаtеNаmе, //указатель на строку с заголовком окна НWND hWпdРаrеr>t,//дескриптор окна DLGРRОС IрDiаlоgFuпс, //указатель на диалоговую процедуру L PARAM dwliri tРаrаm) //значение, передаваемое в диалоговую функцию //через 1Раrаm В программе рrдlб_4.asm (см.
листинг 16.13) обращение к этой функции произ- водится трижды при выборе соответствующих пунктов меню (строки 271,296 и 344 в теле процедуры MenuProc). С ее помощью в диалоговую процедуру передается 32-разрядное значение, которое извлекается посредством параметра IParam. По окончании работы окно диалога должно быть закрыто функцией ЕпdDiаlоg, имеющей формат BOOL End Dialog (НWND hDlg, //дескриптор окна диалога iпt пRеsult); //возвращаемое значение Обычно закрытие окна производится щелчком на кнопке ОК или Cancel. Большой размер исходного текста приложения рrдlб_4.аsm может кого-то ис- пугать. Он может быть существенно сокращен за счет различных средств ассемб- лера, в том числе макрокоманд и процедур. Если с их помощью реорганизовать исходный текст, то он станет гораздо читабельнее и удобнее для использования, почти как аналогичный текст на языке C/C++. Однако в отличие от текста на C/C++ текст на ассемблере — готовая машинная программа, в которую ничего лиш- него не добавляется и код которой полностью контролируется. Более того, с этим текстом можно проводить весь комплекс мероприятий по его оптимизации. В на- шем примере намеренно ничего не сделано в плане улучшения внешнего вида ис- ходного текста, чтобы не навязывать читателю свои подходы к этому процессу, тем более что это могло бы ввести его в заблуждение. Текст программы в настоя- щем виде более всего отражает суть процессов, происходящих в системе Windows во время исполнения приложения, и механизм взаимодействия приложения с си- стемой. Нами остались не разработанными варианты реакции приложения на выбор пользователем пунктов меню Графика ► Эффекты ► Павлин и Графика ► Эффекты ► Кружева. Их реализация требует использования команд сопроцессора и поэтому будет рассмотрена в следующей главе. В начале главы отмечалось, что Windows поддерживает работу двух типов при- ложений — оконных, в полной мере использующих все достоинства графического интерфейса, и консольных, работающих в текстовом режиме. Большая часть дан- ной главы была посвящена разработке программ с оконным интерфейсом. Заклю- чительную часть главы посвятим рассмотрению основ программирования консоль- ных приложений.
<< | >>
Источник: В. И. Юров. Assembler. Учебник для вузов. 2-е изд. 2003

Еще по теме Активизация окна диалога:

  1. Правило активизации мышления.
  2. Правило активизации представлений
  3. Правило активизации мышления.
  4. 7.2.3. Активизация забытых деталей
  5. 7.2.3. Активизация забытых деталей
  6. Упражнение для активизации высших корневых чакр
  7. Правило активизации представлений («мысленного моделирования»)
  8. Диалог Голосов I, II, III
  9. Диалог Голосов – Мастер-курс
  10. Диалог Голосов — Мастер курс
  11. Диалог на телеэкране
  12. ЧАСТЬ II ТВОРЧЕСКИЕ СОСТАВЛЯЮЩИЕ ДИАЛОГА