Основные типы файлов, используемые в Delphi

Программирование в Delphi.

Для запуска Delphi выполните следующее:

1. Выберете элемент ПРОГРАММЫ из меню ПУСК.

2. Войти в папку BORLAND DELPHI3.0.

3. Выбрать пиктограмму Delphi3.0 для запуска.

При загрузке экран оказывается разделенным на несколько частей:

· 1 - выпадающее меню обеспечивает доступ к командам программы

· 2 – панель инструментов обеспечивает быстрый доступ ко многим часто используемым элементам меню

· 3 – форма используется для размещения в ней графических объектов, которые создают внешний вид программы

· 4 – палитра с визуальными компонетами, из которых создается внешний вид программы.

· 5 - Object Inspector для настройки каждого компонента путем установки его свойств.

· 6 – Code Editir – редактор для набора кода.

Для создания приложения Delphi выполняется всего 3 шага:

1. Выбор визульных компонентов из палитры компонентов для добавления их в форму.

2. Настройка каждого компонента путем установки его свойств с помощью Object Inspector.

3. Запись коротких блоков кода, предписывающих программе, что она должна делать после выбора визуального компонента.

Основные типы файлов, используемые в Delphi - student2.ru Основные типы файлов, используемые в Delphi - student2.ru

Проект Delphi

Любой проект имеет, по-крайней мере, шесть файлов, связанных с ним. Три из них относятся к управлению проектом из среды и напрямую программистом не меняются. Вот эти файлы :

· Главный файл проекта, изначально называется PROJECT1.DPR.

· Первый модуль программы /unit/, который автоматически появляется в начале работы. Файл называется UNIT1.PAS по умолчанию, но его можно назвать любым другим именем, вроде MAIN.PAS.

· Файл главной формы, который по умолчанию называется UNIT1.DFM, используется для сохранения информации о внешнем виде главной формы.

· Файл PROJECT1.RES содержит иконку для проекта, создается автоматически.

· Файл, который называется PROJECT1.OPT по умолчанию, является текстовым файлом для сохранения установок, связанных с данным проектом. Например, установленные Вами директивы компилятора сохраняются здесь.

· Файл PROJECT1.DSK содержит информацию о состоянии рабочего пространства.

Разумеется, если сохранить проект под другим именем, то изменят название и файлы с расширением RES, OPT и DSK.

После компиляции программы получаются файлы с расширениями:

DCU - скомпилированные модули

EXE - исполняемый файл

DSM - служебный файл для запуска программы в среде, очень большой, рекомендуется стирать его при окончании работы.

~PA, ~DP - backup файлы Редактора.

Приложение 4

Стандартные компоненты

С компонентами, расположенными на первой странице Палитры Компонент Вы могли ознакомиться в Уроке № 2.

На первой странице Палитры Компонент размещены 14 объектов (рис.8) определенно важных для использования. Мало кто обойдется длительное время без кнопок, списков, окон ввода и т.д. Все эти объекты такая же часть Windows, как мышь или окно.

Набор и порядок компонент на каждой странице являются конфигурируемыми. Так, Вы можете добавить к имеющимся компонентам новые, изменить их количество и порядок. Это можно сделать, вызвав всплывающее меню (нажать правую кнопку мыши, когда указатель над Палитрой).

Основные типы файлов, используемые в Delphi - student2.ru

Рис.8: Компоненты, расположенные на первой странице Палитры.

Основные типы файлов, используемые в Delphi - student2.ru

Стандартные компоненты Delphi перечислены ниже с некоторыми комментариями по их применению. При изучении данных компонент было бы полезно иметь под рукой компьютер с тем, чтобы посмотреть, как они работают и как ими манипулировать.

Основные типы файлов, используемые в Delphi - student2.ru

Курсор - не компонент, просто пиктограмма для быстрой отмены выбора какого-либо объекта.

Основные типы файлов, используемые в Delphi - student2.ru

TMainMenuпозволяет Вам поместить главное меню в программу. При помещении TMainMenu на форму это выглядит, как просто иконка. Иконки данного типа называют "невидимыми компонентом", поскольку они невидимы во время выполнения программы. Создание меню включает три шага: (1) помещение TMainMenu на форму, (2) вызов Дизайнера Меню через свойство Items в Инспекторе Объектов, (3) определение пунктов меню в Дизайнере Меню.

Основные типы файлов, используемые в Delphi - student2.ru

TPopupMenuпозволяет создавать всплывающие меню. Этот тип меню появляется по щелчку правой кнопки мыши на объекте, к которому привязано данное меню. У всех видимых объектов имеется свойство PopupMenu, где и указывается нужное меню. Создается PopupMenu аналогично главному меню.

Основные типы файлов, используемые в Delphi - student2.ru

TLabelслужит для отображения текста на экране. Вы можете изменить шрифт и цвет метки, если дважды щелкнете на свойство Font в Инспекторе Объектов. Вы увидите, что это легко сделать и во время выполнения программы, написав всего одну строчку кода.



Основные типы файлов, используемые в Delphi - student2.ru

TEdit- стандартный управляющий элемент Windows для ввода. Он может быть использован для отображения короткого фрагмента текста и позволяет пользователю вводить текст во время выполнения программы.

Основные типы файлов, используемые в Delphi - student2.ru

TMemo -иная форма TEdit. Подразумевает работу с большими текстами. TMemo может переносить слова, сохранять в ClipBoard фрагменты текста и восстанавливать их, и другие основные функции редактора. TMemo имеет ограничения на объем текста в 32Кб, это составляет 10-20 страниц. (Есть VBX и “родные” компоненты Delphi, где этот предел снят).

Основные типы файлов, используемые в Delphi - student2.ru

TButtonпозволяет выполнить какие-либо действия при нажатии кнопки во время выполнения программы. В Delphi все делается очень просто. Поместив TButton на форму, Вы по двойному щелчку можете создать заготовку обработчика события нажатия кнопки. Далее нужно заполнить заготовку кодом:

procedure TForm1.Button1Click(Sender: TObject);

begin

MessageDlg('Are you there?',mtConfirmation,mbYesNoCancel,0);

end;

Основные типы файлов, используемые в Delphi - student2.ru

TCheckBoxотображает строку текста с маленьким окошком рядом. В окошке можно поставить отметку, которая означает, что что-то выбрано. Например, если посмотреть окно диалога настроек компилятора (пункт меню Options | Project, страница Compiler), то можно увидеть, что оно состоит преимущественно из CheckBox’ов.

Основные типы файлов, используемые в Delphi - student2.ru

TRadioButtonпозволяет выбрать только одну опцию из нескольких. Если Вы опять откроете диалог Options | Project и выберете страницу Linker Options, то Вы можете видеть, что секции Map file и Link buffer file состоят из наборов RadioButton.

Основные типы файлов, используемые в Delphi - student2.ru

TListBoxнужен для показа прокручиваемого списка. Классический пример ListBox’а в среде Windows - выбор файла из списка в пункте меню File | Open многих приложений. Названия файлов или директорий и находятся в ListBox’е.

Основные типы файлов, используемые в Delphi - student2.ru

TComboBoxво многом напоминает ListBox, за исключением того, что позволяет водить информацию в маленьком поле ввода сверху ListBox. Есть несколько типов ComboBox, но наиболее популярен спадающий вниз (drop-down combo box), который можно видеть внизу окна диалога выбора файла.

Основные типы файлов, используемые в Delphi - student2.ru

TScrollbar -полоса прокрутки, появляется автоматически в объектах редактирования, ListBox’ах при необходимости прокрутки текста для просмотра.

Основные типы файлов, используемые в Delphi - student2.ru

TGroupBoxиспользуется для визуальных целей и для указания Windows, каков порядок перемещения по компонентам на форме (при нажатии клавиши TAB).

Основные типы файлов, используемые в Delphi - student2.ru

TRadioGroupиспользуется аналогично TGroupBox, для группировки объектов TRadioButton.

Основные типы файлов, используемые в Delphi - student2.ru

TPanel - управляющий элемент, похожий на TGroupBox, используется в декоративных целях. Чтобы использовать TPanel, просто поместите его на форму и затем положите другие компоненты на него. Теперь при перемещении TPanel будут передвигаться и эти компоненты. TPanel используется также для создания линейки инструментов и окна статуса.

Это полный список объектов на первой странице Палитры Компонент. Если Вам нужна дополнительная информация, то выберите на Палитре объект и нажмите клавишу F1 - появится Справочник с полным описанием данного объекта.

Страница Additional

На странице Standard представлены управляющие элементы, появившиеся в Windows 3.0. На странице Additional размещены объекты, позволяющие создать более красивый пользовательский интерфейс программы.

Основные типы файлов, используемые в Delphi - student2.ru

Список компонент:

Основные типы файлов, используемые в Delphi - student2.ru

TBitBtn -кнопка вроде TButton, однако на ней можно разместить картинку (glyph). TBitBtn имеет несколько предопределенных типов (bkClose, bkOK и др), при выборе которых кнопка принимает соответствующий вид. Кроме того, нажатие кнопки на модальном окне (Form2.ShowModal) приводит к закрытию окна с соответствующим модальным результатом (Form2.ModalResult).

Основные типы файлов, используемые в Delphi - student2.ru

TSpeedButton -кнопка для создания панели быстрого доступа к командам (SpeedBar). Пример - SpeedBar слева от Палитры Компонент в среде Delphi. Обычно на данную кнопку помещается только картинка (glyph).

Основные типы файлов, используемые в Delphi - student2.ru

TTabSet - горизонтальные закладки. Обычно используется вместе с TNoteBook для создания многостраничных окон. Название страниц можно задать в свойстве Tabs. Но проще это сделать в программе при создании формы (OnCreate) :

TabSet1.Tabs := Notebook1.Pages;

А для того, чтобы при выборе закладки страницы перелистывались нужно в обработчике события OnClick для TTabSet написать:

Notebook1.PageIndex := TabSet1.TabIndex;

Основные типы файлов, используемые в Delphi - student2.ru

TNoteBook - используется для создания многостраничного диалога, на каждой странице располагается свой набор объектов. Используется совместно с TTabSet.

Основные типы файлов, используемые в Delphi - student2.ru

TTabbedNotebook - многостраничный диалог со встроенными закладками, в данном случае - закладки сверху.

Основные типы файлов, используемые в Delphi - student2.ru

TMaskEdit -аналог TEdit, но с возможностью форматированного ввода. Формат определяется в свойстве EditMask. В редакторе свойств для EditMask есть заготовки некоторых форматов: даты, валюты и т.п. Спец. символы для маски можно посмотреть в Справочнике.

Основные типы файлов, используемые в Delphi - student2.ru

TOutline - используется для представления иерархических отношений связанных данных. Например - дерево директорий.

Основные типы файлов, используемые в Delphi - student2.ru

TStringGrid -служит для представления текстовых данных в виде таблицы. Доступ к каждому элементу таблицы происходит через свойство Cell.

Основные типы файлов, используемые в Delphi - student2.ru

TDrawGrid - служит для представления данных любого типа в виде таблицы. Доступ к каждому элементу таблицы происходит через свойство CellRect.

Основные типы файлов, используемые в Delphi - student2.ru

TImage -отображает графическое изображение на форме. Воспринимает форматы BMP, ICO, WMF. Если картинку подключить во время дизайна программы, то она прикомпилируется к EXE файлу.

Основные типы файлов, используемые в Delphi - student2.ru

TShape -служит для отображения простейших графических объектов на форме: окружность, квадрат и т.п.

Основные типы файлов, используемые в Delphi - student2.ru

TBevel - элемент для рельефного оформления интерфейса.

Основные типы файлов, используемые в Delphi - student2.ru

THeader- элемент оформления для создания заголовков с изменяемыми размерами для таблиц.

Основные типы файлов, используемые в Delphi - student2.ru

TScrollBox - позволяет создать на форме прокручиваемую область с размерами большими, нежели экран. На этой области можно разместить свои объекты.

Страница Dialogs

Основные типы файлов, используемые в Delphi - student2.ru

На странице Dialogs представлены компоненты для вызова стандартных диалогов Windows. Внешний вид диалогов зависит от используемой версии Windows. Объекты, представленные на данной странице невидимы во время выполнения и вызов диалогов происходит программно, например:

if OpenDialog1.Execute then Image1.Picture.LoadFromFile(OpenDialog1.FileName);

Диалоги Windows в порядке появления на странице Dialogs:

- OpenDialog; выбрать файл - SaveDialog; сохранить файл - FontDialog; настроить шрифт - ColorDialog; выбор цвета - PrintDialog; печать - PrinterSetupDialog; настройка принтера - FindDialog; поиск строки - ReplaceDialog; поиск с заменой

Страница System

Основные типы файлов, используемые в Delphi - student2.ru

Страница представляет набор компонент для доступа к некоторым системным сервисам типа таймер, DDE, OLE и т.п.

Основные типы файлов, используемые в Delphi - student2.ru

TTimer -таймер, событие OnTimer периодически вызывается через промежуток времени, указанный в свойстве Interval. Период времени может составлять от 1 до 65535 мс.

Основные типы файлов, используемые в Delphi - student2.ru

TPaintBox -место для рисования. В обработчики событий, связанных с мышкой передаются относительные координаты мышки в TPaintBox, а не абсолютные в форме.

Основные типы файлов, используемые в Delphi - student2.ru

TFileListBox -специализированный ListBox, в котором отображаются файлы из указанной директории (св-во Directory). На названия файлов можно наложить маску, для этого служит св-во Mask. Кроме того, в св-ве FileEdit можно указать объект TEdit для редактирования маски.

Основные типы файлов, используемые в Delphi - student2.ru

TDirectoryListBox -специализированный ListBox, в котором отображается структура директорий текущего диска. В св-ве FileList можно указать TFileListBox, который будет автоматически отслеживать переход в другую директорию.

Основные типы файлов, используемые в Delphi - student2.ru

TDriveComboBox -специализированный ComboBox для выбора текущего диска. Имеет свойство DirList, в котором можно указатьTDirectoryListBox, который будет отслеживать переход на другой диск.

Основные типы файлов, используемые в Delphi - student2.ru

TFilterComboBox - специализированный ComboBox для выбора маски имени файлов. Список масок определяется в свойстве Filter. В свойстве FileList указывается TFileListBox, на который устанавливается маска.

!!!!С помощью последних четырех компонент (TFileListBox, TDirectoryListBox, TDriveComboBox, TFilterComboBox) можно построить свой собственный диалог выбора файла, причем для этого не потребуется написать ни одной строчки кода.

Основные типы файлов, используемые в Delphi - student2.ru

TMediaPlayer -служит для управления мултимедйными устройствами (типа CD-ROM, MIDI и т.п.). Выполнен в виде панели управления с кнопками Play, Stop, Record и др. Для воспроизведения может понадобиться как соответствующее оборудование, так и программное обеспечение. Подключение устройств и установка ПО производится в среде Windows. Например, для воспроизведения видео, записанного в формате AVI, в потребуется установить ПО MicroSoft Video (в Windows 3.0, 3.1, WFW 3.11).

Основные типы файлов, используемые в Delphi - student2.ru
Основные типы файлов, используемые в Delphi - student2.ru

TOLEContainer - контейнер, содержащий OLE объекты. Поддерживается OLE 2.02 Подробнее об этом - в последующих уроках.

TDDEClientConv,TDDEClientItem, TDDEServerConv, TDDEServerItem -4 объекта для организации DDE. С помощью этих объектов можно построить приложение как DDE-сервер, так и DDE-клиент. Подробнее - в следующих уроках.

Страница VBX

Основные типы файлов, используемые в Delphi - student2.ru

Поскольку формат объектов из MicroSoft Visual Basic (VBX) является своего рода стандартом и существует большое количество библиотек таких объектов, то в Delphi была предусмотрена совместимость с этим форматом. VBX версии 1.0 можно включить в Палитру Компонент Delphi и использовать их как “родные” компоненты (в том числе, выбирать их в качестве предков и наследовать свойства и методы).

TBiSwitch -двухпозиционный переключатель.

Основные типы файлов, используемые в Delphi - student2.ru
Основные типы файлов, используемые в Delphi - student2.ru

TBiGauge - прогресс-индикатор.

Основные типы файлов, используемые в Delphi - student2.ru

TBiPict -аналог TImage.

Основные типы файлов, используемые в Delphi - student2.ru

TChartFX -деловая графика.

Пример создания простого приложения.

1. Из палитры компонентов со страницы Standart в форму надо добавить компонент кнопку – Button, дважды кликнув левой кнопкой мыши по элементу.

2. Переместить кнопку в нужное на форме место буксировкой.

3. В Object Inspector свойство Caption служит для создания надписи на любом видимом компонете. В данном случае – на кнопке. Назовем кнопку “Нажмите здесь”.

4. Свойство Name служит названием индетефикатора для видимого компонента. По нему надо будет общаться с компонентом в программе. Изменять имя не будем.

5. Дважды кликнуть по кнопке на форме. Происходит автоматический переход в редактор кода внутрь процедуры, описывающей реакцию программы на нажатие кнопки.

6. Между Begin и End набрать следующую команду:

ShowMessage(‘Привет, Вы на меня нажали!’);

Данная команда выводит диалоговое окно с сообщением, находящимся внутри апострофов.

7. В меню Run нажать команду Run. или F9.

8 После начала работы программы нажмите кнопку и на экране появится диалоговое окно с сообщением, Далее надо нажать на кнопку внутри этого окно для выхода из него.

9 Для выхода из программы ( в принципе название программа и приложение идентичны) надо нажать га крестик вверху справа на форме или Alt-F4, или кликнуть правой кнопкой мыши по пиктограмме на форме и из контекстно-зависимого меню выбрать команду “Закрыть - Close”.

Закрытие формы

Для программного закрытия приложения необходимо использовать специальный метод Close.

Метод – это предварительно определенный языковой элемент, выполняющий действия над объектом (здесь – над формой).

Переименование компонентов

При добавлении компонентов в форму Delphi автоматически присваивает им имена по возрастанию. Например, Button1, Button2, Button3 и т.д.

В верхней строке Object Inspector в левой его части располагается имя выбранного компонента, а в правой – название общего класса, к которому этот компонент относится.

ПРАВИЛО: Обычно идентификаторам компонентов присваивают имена, которые описывают их функциональное назначение в программе. Например, Button1 можно назвать BtnHelp, используя свойство Object Inspector Name.

 
 
Основные типы файлов, используемые в Delphi - student2.ru

Begin

end;

Любой код, добавленный между операторными скобками begin – end, будет выполняться при щелчке по кнопке.

Работа с диалоговыми окнами

Для извлечения результатов пользовательского ввода используется функция InputBox.

Пример использования функции InputBox

1. Закрыть предыдущее приложение и в меню File выполнить команду New Application, которая создаст новую пустую форму.

2. На форму из палитры компонентов со страницы Standart добавить кнопку Button.

3. Дважды кликнутьпо кнопке и в Code Editor (редактор кода) набрать следующее:

Procedure Tform.Button1Click(Sender:Tobject);

Var

r:string;

Begin

r:=InputBox(‘Добро пожаловать в мою программу’,’Введи свое имя’,’’);

ShowMessage(r );

end;

4. F9.

Переменная r содержит ответ, введенный пользователем.

Функция InputBox состоит из 3 частей:

1. Содержимое первых апострофов – заголовок диалогового окна.

2. Содержимое вторых апострофов – фактическая подсказка для пользователя.

3. После второй запятой – комплект апострофов ‘’ – это пустая строка, которая является местом, куда можно поместить значение по умолчанию для переменной отклика r.

 
 
Основные типы файлов, используемые в Delphi - student2.ru

Добавление комментариев

Два способа:

1. { } – содержимое неограниченно по емкости и может располагаться на нескольких строках;

2. //- комментарии только на одной строке после кода.

Работа с типами данных

Таблица базовых типов данных

Òèï Äèàïîçîí Ðàçìåð â áàéòàõ
Boolean 1 áàéò
Byte îò 0 äî 255
Char 1 áàéò
Comp îò –263 äî 263-1
Currency îò –922337203685477,5805 äî 922337203685477,5807
Double îò 5,0*10-324 äî 1,7*10308
Extended îò 3,4*10-4932 äî 1,1*104932
Integer îò-2147483648 äî 2147483647
LongInt îò-2147483648 äî 2147483647
Real îò 2,9-10-39 äî 1,7*1038
ShortInt îò –128 äî 127
Single îò –1,5*10-45 äî 3,4*1038
String äî 4 Ãá Переменный
Word îò 0 äî 65535

Îñíîâû ðàáîòû ñ êîìïîíåíòàìè

Каждая закладка в палитре компонентов содержит отдельную категорию объектов. Страница Standart содержит элементы управления, наиболее часто используемые.

Использование меток (Label)

Компонент Label (метка) используется для отображения подсказки или сообщения пользователю. При этом содержимое метки нельзя изменять в процессе работы программы.

 
 
Правило: любой компонент из палитры добавляется в форму двойным щелчком по нему мышкой.

На форме по внешнему периметру элемента управления, при его выборе, появляется несколько черных квадратов, перемещая которые можно изменять размеры элемента.

Компонент Edit

Данный компонент обеспечивает ввод информации от пользователя (располагается в Standart). Свойство Text компонента извлекает значение, которое вводит пользователь. Например:

Procedure Tform.Button1Click(Sender:Tobject);

Var

s:string;

Begin

s:=Edit1.Text;

ShowMessage(‘Ваше сообщение-‘+s );

end;

 
 
Основные типы файлов, используемые в Delphi - student2.ru

Предварительно на форму надо ввести одну кнопку и один Edit.

Для очистки исходной информации используется команда:

Edit1.Text:=’’;.

Свойства компонента Edit

1. MaxLength определяет максимальное количество символов, которые можно ввести в Edit. При вводе большего количества подается звуковой сигнал.

2. PasswordChar – при установке этого свойства в отличное от значения по умолчанию, элемент управления будет подавлять отображение набранных символов и показывать только символ из этого свойства.

Установка порядка обхода

Порядок обхода - это порядок, в котором компоненты в форме получают фокус при нажатии клавиши табуляции.

Delphi автоматически устанавливает порядок обхода в сответствии с порядком добавления в форму элементов управления.

Есть 2 способа настройки порядка обхода компонентов.

1. При использовании Object Inspector можно установить свойство TabOrder каждого компонента. Причем 1-ый элемент имеет номер 0.

2. Щелком правой кнопкой мыши на каком-либо компоненте и выборе команды TabOrder (или из меню Edit). Затем в отдельном окне появляется список компонентов в порядке добавления в форму, который можно изменить стрелками.

Пример Button

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

· Откроем новый проект и сохраним его. Модуль описания - Button_ Un. Pas через меню File команду Save as.., проект - Button_ Pr. DPE через меню File команду Save Project as …

· Выбирем компонент - кнопку

а) Можно отбуксировать компонент в форму.

б) При нажатой кнопке Shift кликнуть в палитре по Button. Компонент станет выбранным, что покажет небольшая рамка вокруг него.

· Cоздадим несколько экземпляров этого компонента ( 6 экз ), путем кликания левой кнопкой мыши внутри формы.

Теперь приступаем к установке свойств 6-ти кнопок.

· Присвоим форме имя ButtonForm ( в Object Inspector / Name )

· Ввести ButtonForm .

Теперь надо установить заголовки для кнопок (т. е. текст внутри кнопок)

Считаем а) что кнопка 1 отключает кнопку 4 и назовем ее &1: Disable 4 .

Warning ! Каждая кнопка имеет подчеркнутую горячую клавишу ( в нашем случае будем считать, что это - номер кнопки ) .

Cимвол имперсанта ( & ) - помещенный перед заголовком (например: &1:Disable4), позволяет создать кнопки, которые может использовать клавиатура .

Для этого надо обработать свойство OnClick каждой кнопки.

Cамый простой код будут иметь кнопки 2 и 4. Кнопка 2 копирует свой шрифт (не стандартный ) в кнопку 1, а затем отключает себя :

· Нажимаем на форме поле кнопки 2;

· В Object Inspector входим в Events / On Click и дважды кликаем. Происходит переход в текст редактора, где следует набрать ; например:

Procedure TButtonForm.Button2Click(Sender:TObject);

Begin

Button1.Font: =Button2.Font;

Button2.Enabled: =False;

end;

Кнопка 4 восстанавливает исходный шрифт кнопки 1, где вместо прямого копирования шрифта можно назначить ей шрифт формы, используя свойство ParentFont кнопки. Это событие также включает кнопку 2 , после чего она опять готова к изменению шрифта кнопки 1;

· На форме кликаем кнопку 4.

· В Object Inspector / Events / OnClick дважды нажимаем OnClick и в редакторе текста набираем :

Procedure TButtonForm.Button4Click ( Sender : Tobject );

Begin

Button1.ParentFont : =True;

Button2.Enabled : = True;

end;

Чтобы операции отключения и сокрытия для кнопок 1 и 5 нужна переменная логического типа Boolean, в которой будет храниться текущее состояние.

Есть и другой способ:

Будем решать , какую операцию следует выполнять на основе анализа текущего состояния кнопки. Мы запишем код, где методы этих двух кнопок используют два разных подхода.

· На форме кликнем по кнопке 1

· В Object Inspector / Events дважды кликнуть по OnClick и перейти в редактор и набрать следующее :

Procedure TButtonForm.Button1Click ( Sender : T Object );

Begin

End

Else

Begin

Button4.Enabled := False;

Button1.Caption := ‘ & 1: Enabled ’ ;

end;

end;

По аналогичному алгоритму для кнопки 5 :

Procedure TButtonForm.Button 5.Click ( Sender: TObject );

Begin

Button2.Visible : = not Button2.Visible;

If Button2.Visible then

Button 5.Caption : = ‘& 5 : Hide 2 ’ ;

Else

Button 5.Caption : = ‘ & 5 : Show 2 ‘ ;

end;

Последних две кнопки ( 3 и 6 ) имеют неограниченный код , т.е. можно уменьшить кнопку 6 до такой степени , что она, в конце концов , исчезнет :

Procedure TButtonForm.Button3Click ( Sender : tObject );

Begin

Button6.Height : = Button6.Height + 3 ;

Button6.Width := Button6.Width +3 ;

end;

Procedure TButtonForm.Button6Click ( Sender : TObject );

Begin

Button6.Height : = Button6.Height -3 ;

Button6.Width : = Button6.Width -3 ;

end;

Пример TYPES

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

· Образуем в меню FILE / NEW APPLICATION новую форму.

· В правой части формы через меню Standart организуем 11 кнопок.

* Дадим каждой из кнопок свое имя через Object Inspector / Name

Short_INT, Word,_Cardinal, Small_INT, Word_Bool, _Char, Long_INT, Boolean, _Integer, Byte_Bool, Long_Bool

В первой части формы через меню Standart организуем 2 столбца из 4-х меток каждый.

Для первого столбца через Object Inspector / Name дадим имена меткам :

TYPE :

SIZE :

MAX :

MIN :

Во втором столбце меток имена Name должны быть пустыми, т.е. свойство CAPTION должно быть пустым.

Щелкнем дважды по каждой кнопке, для организации перехода в редактор.

Для кнопок с именами Short_INT , Small_INT , _INTEGER ,_Cardinal , _Word запишем в редакторе следующий текст ( для каждой кнопки - свой тип данных ).

Например:

Procedure TForm1.Short_Int Click ( Sender : T Object ) ;

var Number:ShortInt ;

Begin

TypeLabel.Caption : = ‘ Short_ Int ‘ ;

SizeLabel. Caption : = IntToStr ( Sizeof ( Number ) );

MaxLabel. Caption : = IntToStr ( High ( Number ) );

MinLabel. Caption : = IntToStr ( Low ( Number ) );

end ;

Для других кнопок структура процедур не изменяется, за исключением типа данных и две последних строки запишутся следующим образом :

MaxLabel.Caption : = InttoStr (ORD ( # 0 ) ) ;

MinLabel.Caption : = InttoStr (ORD ( # 0 ) ) ;

Создание списка ListBox

Предварительно необходимо добавить на форму компонент ListBox.

2 способа создания списка:

1. Дважды кликнуть по форме и в процедуре настройки формы procedure FormCreate(Sender: TObject); ввести следующие команды:

procedure TForm1.FormCreate(Sender: TObject);

Begin

ListBox1.Items.Add ('Apples');

ListBox1.Items.Add ('Apes');

ListBox1.Items.Add ('Anchor');

ListBox1.Items.Add ('Antenna');

ListBox1.Items.Add ('Angle');

ListBox1.Items.Add ('Ant');

ListBox1.Items.Add ('Bananas');

ListBox1.Items.Add ('Basket');

ListBox1.Items.Add ('Bandanna');

ListBox1.Items.Add ('Broccoli');

ListBox1.Items.Add ('Brook');

ListBox1.Items.Add ('Cat');

ListBox1.Items.Add ('Catch');

ListBox1.Items.Add ('Cape');

end;

Основные типы файлов, используемые в Delphi - student2.ru

2. На форме выделить ListBox и в Object Inspector на вкладке Propierties справа от свойства Items дважды кликнуть. При этом происходит переход в редактор, где каждая строка будет являться одним элементом списка.

Пример работы со списком

1. на форме создать:

· 3 êíîïêè Button

· 1 ListBox

· 1 Edit

· 1 Label

2. Создать для ListBox список (см. выше).

3. Для Edit1 в Object Inspector свойство Text сделать пустым

4. Для Label1 в Object Inspector в свойстве Captiоn сделать надпись”Выбранный элемент списка”.

5. Для Button1 в Object Inspector в свойстве Captiоn сделать надпись на ней ”Выбрать элемент списка”.

6. Для Button2 в Object Inspector в свойстве Captiоn сделать надпись на ней ”Всего элементов списка”.

7. Для Button3 в Object Inspector в свойстве Captiоn сделать надпись на ней ”Выход”.

8. После инициализации списка в ListBox1 можно выбрать один любой его элемент и нажав Button1 вывести егоназвание :

procedure Tform1.Button1Click(Sender: Tobject);

Begin

ShowMessage (ListBox1.Items[ListBox1.ItemIndex]);

end;

Свойство ItemIndexâîçâðàùàåò ïîçèöèþ òåêóùåãî âûáðàííîãî ýëåìåíòà â ñïèñêå, ïðè÷åì íîìåðàöèÿ íà÷èíàåòñÿ ñ 0. Ïîçèöèÿ, êîòîðóþ âîçâðàùàåò ñâîéñòâî ItemIndex,ìîæíî ðàññìàòðèâàòü êàê èíäåêñ â ñâîéñòâå Item для извлечения выбранного элемента списка через ShowMessage.

Ïðèìå÷àíèå: Åñëè â ñïèñêå íå âûáðàòü íè îäèí ýëåìåíò, òî áóäåò îøèáêà, à ñëåäîâàòåëüíî, ñáîé ïðîãðàììû. ×òîáû ýòîãî èçáåæàòü ìîæíî ñäåëàòü òàê:

procedure Tform1.Button1Click(Sender: Tobject);

Begin

Try

ShowMessage (ListBox1.Items[ListBox1.ItemIndex]);

Except

On EstringListError do

MessageDlg(‘No item selected.’, mtInformation, [mbOk], 0);

end;

end;

9. В элементе Edit1 можно ввести название из списка и курсор покажет этот элемент в списке, аналогично свойству Find любого редактора. Для этого служит:

procedure Tform1.Edit1Change(Sender: Tobject);

{ Search through list box and return closest match to keys typed }

Begin

SearchListItem (Edit1, ListBox1);

end;

Ïðîöåäóðà SearchListItemîñóùåñòâëÿåò ïîèñê â ñïèñêå è ôîçâðàùàåò áëèæàéøåå ñîîòâåòñòâèå ñèìîëàì, ââåäåííûì â ýëåìåíò óïðàâëåíèÿ Edit1. Для этого используется специальный модульLMUtil, который поставляется в дополнительной библиотеке и находится у автора.

10. Кнопка Button2 выводит количество элементов в списке:

procedure Tform1.Button2Click(Sender: Tobject);

Var

S: string;

Begin

S := ‘Total list elements: ‘;

MessageDlg(S + IntToStr(ListBox1.Items.Count), mtInformation,

[mbOk], 0);

end;

11. Кнопка Button3 èñïîëüçóåòñÿ äëÿ âûõîäà èç ïðîãðàììû:

procedure Tform1.Button3Click(Sender: Tobject);

Begin

close;

end;

 
 
Основные типы файлов, используемые в Delphi - student2.ru

Примечание1: в Object Inspector в свойстве Fonts можно менять шрифты надписей почти для всех элементов, а в свойстве Color менять цвета.

Примечание2:

Функция MessageDlg служит для показа небольшого диалогового окна с сообщением имеет 4 параметра:

1) строка – само сообщение

2) тип окна сообщения

· mtWarning

· mtError

· mtInformation

· mtConfirmation

3) множество значений, указывающее на необходимые кнопки:

· mbYES

· mbNO

· mbOK

· mbCANCEL

· mbHELP

Здесь можно задать не одну, а несколько кнопок.

Для каждого типа автоматически используется свой заголовок и рядом с текстом отображается своя пиктограмма.

4) контекст справки, т.е. число, указывающее какая страница справочной системы должна вызываться, когда пользователь нажмет F1. ( 0 – HELP

Наши рекомендации