Программирование - это просто
Advertisement
Главная arrow Уроки Delphi arrow Delphi - это просто! arrow Delphi. Урок 4.2. TForm - это тоже компонент Delphi
26.04.2024 г.
Главное меню
Главная
Интернет магазин
Программные продукты
Биржевые роботы
Искусственный интеллект
Математика и информатика
1С:Предприятие
Уроки C#
Уроки Delphi
Уроки программирования
Web-программирование
Дизайн и графика
Компьютер для блондинок
Исходники
Статьи
Платный раздел
Рассказы про компьютеры
Хитрости и секреты
Системный подход
Размышления
Наука для чайников
Друзья сайта
Excel-это не сложно
Все о финансах
.
Delphi. Урок 4.2. TForm - это тоже компонент Delphi Печать E-mail
Автор megabax   
20.06.2009 г.
В предыдущей статье я рассказал о том

 

Некоторые возможности формы (Form - это тоже компонент Delphi).

Продолжим создание текстового редактора. В предыдущей статье  я рассказал о том, как сделать меню и как загрузить из файла текст в компонент Memo. Теперь по изучаем немножко возможности формы. Давайте в обработчик события OnClick внесем некоторые изменения. В частичности, вместо

 

   if odOpenDialog.Execute then

   begin

      moText.Lines.LoadFromFile(odOpenDialog.FileName);

   end;

 

сделаем

 

   if odOpenDialog.Execute then

   begin

      moText.Lines.LoadFromFile(odOpenDialog.FileName);

      Caption:=odOpenDialog.FileName;

   end;

 

Запустим программу. Теперь, когда мы открываем другой файл, у нас его имя отобразиться в заголовке окна.

 

компоненты Delphi программирование книги скачать

 

 

Далее, в обработчик событий формы CloseQuery введем такой текст:

 

  if messageDlg('Вы действительно хотите выйти из программы?',mtConfirmation,[mbYes, mbNo],0)=mrYes then

    CanClose:=true

  else

    CanClose:=false;

 

Сам текст обработчика события выглядит теперь вот так*:

компоненты Delphi программирование книги скачать

 

Разберем его по подробнее. Слово procedure  обозначает описание предопределенной процедуры, подпрограммы. Иными словами, можно один раз описать текст программы, состоящий из нескольких слов, а уже потом из другого места программы несколько раз вызывать его по имени. В этом случае не нужно будет каждый раз заново писать эти строки.

Но, в данном случает, данная подпрограмма вызывается прозрачно, незаметно для разработчика. А именно тогда, когда пользователь хочет закрыть окно. Мы у него спрашиваем, действительно ли он хочет выйти из программы, и если да, то параметры CanClose присваиваем true, иначе false. В последнем случае, система, проверив значение параметра CanClose, не станет закрывать окно.

Давайте испытаем. Запустим программу и попытаемся закрыть окно:

компоненты Delphi программирование книги скачать

 

Теперь напишем процедуру сохранения текста в файл. Добавить в меню еще один пункт с заголовком «Сохранить» и идентификатором «itSave».  Так же положим на форму диалог сохранения файла и присвоим ему идентификатор sdSaveDialog. Укажем ему свойства DefaultExt и Filter аналогично диалогу открытия файла*.

 

компоненты Delphi программирование книги скачать

 

 В обработчик OnClick пунта меню itSave  введем следующий текст:

 

  if sdSaveDialog.Execute then

  begin

     moText.Lines.SaveToFile(sdSaveDialog.FileName);

     Caption:=sdSaveDialog.FileName;

  end;

 

Теперь мы можем в нашем редакторе не только загрузить текстовый файл, но еще и сохранить.

Следует еще заметить, то объекты бывают как визуальные, так и не визуальные. В частичности, OpenDialog и SaveDialog относятся к не визуальным компонентам. Мы их кладем на форму, но при запуске программы на форме то их нет. Данные компоненты нужны только для вызова соответствующих диалогов.

 

 


Скриншоты, помеченные знаком * , являются цитатами и иллюстрациями   программного продукта "Delphi", авторское право на который принадлежит "Borland Software Corporation".


 

Последнее обновление ( 01.07.2012 г. )
 
« След.   Пред. »
 
© 2024 Программирование - это просто
Joomla! - свободное программное обеспечение, распространяемое по лицензии GNU/GPL.
Русская локализация © 2005-2008 Joom.Ru - Русский Дом Joomla!
Design by Mamboteam.com | Powered by Mambobanner.de
Я принимаю Яндекс.Деньги