Модальное окно диалога имеет свойство ModalResult, которое используется для возвращения этой информации. Фактически, все формы обладают этим свойством, но оно используется только в том случае, если форма является модальной. Это свойство уста новливается в mrNone, когда вы вызываете ShowModal для отображения окна диалога, и оно останется активным до тех пор, пока вы не измените ModalResult на значение, отличное от mrNone. Если вы обратитесь к диалоговой подсказке относительно Modal-Result, то увидите список восьми возможных значений для этого свойства. Они являются возможными возвращаемыми значениями для окна диалога.

Имеется два способа установить свойство ModalResult. Наиболее очевидным являет ся написать строку кода, который устанавливает его в соответствии с некоторым событием. Например, вы можете создать обработчик события OnClick для кнопки ОК окна диалога "О...", которая содержала бы следующую строку кода:

ModalResult := mrOk;

Это действительно выполнило бы фокус, но это - еще одна дополнительная необходимая строка кода. Поскольку кнопки обычно используются для закрытия окон диалога, кнопки Delphi обладают своим собственным свойством ModalResult, и вы можете изменять его значение во время проектирования. Установка свойства ModalResult кнопки в smrOk, например, говорит о том, что кнопка должна устанавливать свойство ModalResult своей формы в mrOk, когда кнопка нажимается. Это тот метод, который использует наше окно диалога "О...". Если вы просмотрите свойство ModalResult кнопки Ok в Object Inspector, то увидите, что оно предварительно установлено в mrOk.

Кнопки и BitBtns

Вы, вероятно, обратили внимание, что кнопка ОК окна диалога "О..." имеет на себе рисунок. Эта кнопка является компонентом BitBtn (кнопка, которая позволяет помещать на ней как картинку, так и текст). Компонент BitBtn обладает всеми свойствами стан дартной кнопки плюс некоторые дополнительные свойства, такие, как Glyph, Kind и Layout, которые используются для определения картинки кнопки и ее внешнего вида.

Свойство Kind позволяет вам специфицировать стандартный тип кнопки, как то - bkOk, bkYes, bkRetry и тому подобные - для данной кнопки. Если вы устанавливаете Kind во что-либо отличное от bkCustom, то вам не нужно специфицировать Glyph, поскольку Delphi уже имеет встроенные картинки для каждого из стандартных типов кнопок. Это действительно удобно, поскольку позволяет с минимальными усилиями придавать принятый вид всем вашим стандартным кнопкам. Если вы специфицируете bkCustom для этого свойства, вам не нужно использовать Picture Editor при загрузке картинки для своей кнопки.

Свойство Layout позволяет вам располагать картинку на кнопке. Возможными значениями для Layout являются blGlyphBottom, blGlyphLeft, blGlyphright и bIGlyphTop По умолчанию берется blGlyphLeft.

Отображение нового окна диалога "О..."

Прежде, чем мы продолжим, нам необходимо выполнить ряд изменений в коде нашей главной формы, чтобы она обращалась к новому, а не к старому, окну диалога "О...". Мы уже удалили из нашего проекта старое окно диалога "О...", но это не изменило кода, который мы написали для ссылки на него. Вам необходимо выполнить следующее:


⇐ Предыдущая страница| |Следующая страница ⇒

Программирование в среде Delphi



Новости за месяц

  • Декабрь
    2021
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31