среда, 20 февраля 2013 г.

окна диалога delphi

Шаг 4. Большинство монопольных окон диалога появляются в центре экрана. За это у формы отвечает свойство Position. Изначально оно равно poDesigned форма появляется точно в том же месте, где она находится во время разработки. Чтобы центрировать форму на экране, установите свойство Position в значение poScreenCenter. Заметим, что другие значения свойства Position позволяют центрировать форму относительно главной формы, относительно формы-владельца или вообще не центрировать (см. параграф 7.3.4).

в управляющем меню будут лишь два пункта: Move и Close.

у формы не будет кнопок сворачивания и разворачивания;

у пользователя не будет возможности изменить размеры формы;

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

Рисунок 9.2. Превращение формы в окно диалога

Шаг 3. Обычная форма имеет много "фитюлек", которые совсем не нужны окну диалога, например раздвижную границу, меню управления окном, кнопки сворачивания и разворачивания окна. Чтобы их убрать, установите свойство BorderStyle в значение bsDialog (рисунок 9.2).

Шаг 2. Добавьте в проект новую форму, переименуйте ее в AboutForm и сохраните модуль под именем About.pas. Придайте форме нужные размеры и установите ее заголовок (свойство Caption) в значение AboutPPicturePViewer. Далее сделаем из этой формы окно диалога.

Рисунок 9.1. Пункт меню для вызова окна About

Шаг 1. Запустите среду Delphi и откройте проект PictureViewer. Добавьте в главное меню пункт Help (программный идентификатор HelpMenuItem) с командой About... (программный идентификатор AboutMenuItem). По команде About... (рисунок 9.1) будет вызываться окно диалога About, которое мы дальше разработаем.

Простейшим примером окна диалога является окно About ("О программе"). Как правило, оно открывается по команде меню HelpP|PAbout... , работает в монопольном режиме и служит лишь для информирования пользователя. В предыдущей главе мы рассматривали программу PicView, там как раз не достает окна About. Исправим это упущение и на практике познакомимся с созданием простейших окон диалога.

9.2.1. Подготовка формы

Немонопольные окна диалога предоставляют пользователю свободу выбора, позволяя вводить данные сразу в нескольких окнах.

Монопольное окно диалога не дает пользователю возможности переключиться на другие окна программы до тех пор, пока работа с ним не будет завершена. Сразу заметим, что это не мешает пользователю переключаться на другие программы, например, с помощью панели задач Windows или нажатием комбинации клавиш Alt+Tab. Большинство окон диалога работает в монопольном режиме.

Окна диалога могут работать в одном из двух режимов, монопольном (иногда говорят модальном, от англ. modal) и немонопольном (немодальном, от англ. modeless).

В основе диалога между пользователем и компьютером лежит окно диалога (dialog box) форма, содержащая компоненты для ввода данных: кнопки, текстовые поля, флажки, переключатели, списки и др. С помощью этих компонентов пользователь просматривает и вводит данные. В среде Delphi окно диалога создается на основе обычной формы.

9.1. Понятие окна диалога

Все мы любим иногда поболтать. Это человеческое свойство передалось программам, и они частенько у вас что-то спрашивают, а вы им что-то отвечаете, иногда невпопад. Беседа , правда, идет текстом, а не голосом. Так вот, разговор между программой и пользователем называется диалогом. Организация диалога важнейшая часть любой программы. Ваша прямая обязанность сделать этот диалог приятным. По форме диалог прост появляется окно с некоторым сообщением, полем для ввода вашего ответа и кнопкой OK. Вы внимательно читаете сообщение, набираете строку-ответ и нажимаете кнопку OK. Вот и все. Создатели среды Delphi предусмотрели все возможные типы диалогов и создали для вас ряд великолепных домашних заготовок .

Программирование на языке DelphiГлава 9. Окна диалогаАвторы: Опубликовано: 12.06.2006Исправлено: 13.06.2006Версия текста: 1.0

Программирование на языке Delphi P PP PP P PP PP PPPОценить P

Комментариев нет:

Отправить комментарий