Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Delphi.Начало.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.56 Mб
Скачать

Зависимые переключатели. Компоненты RadioButton, RadioGroup

Кнопка переключателя может находиться в одном из двух состояний: включено или выключено. Будучи помещенными в контейнер, зависимые переключатели используются для выбора одной опции из нескольких взаимоисключающих, т.е. при включении одной кнопки, другие автоматически выключаются. Таким образом, во включенном состоянии всегда находится одна кнопка. Поэтому они объединяются в группу. Контейнером называется элемент, который используется для группировки других элементов. Например, контейнером может быть форма или компонент GroupBox. На вкладке Standart находятся два компонента, которые позволяют создавать зависимые переключатели: RadioButton и RadioGroup.

Компонент RadioButton позволяет создать один переключатель. Свойства приведены в таблице:

Основные свойства компонента RadioButton

Свойство

Описание

Caption

Подпись кнопки.

Checked

Если True, то кнопка находится во включенном состоянии

Компонент RadioGroup представляет собой группу радиокнопок. Только одна кнопка в группе может находиться во включенном состоянии. Основные свойства компонента RadioGroup приведены в таблице:

Свойство

Описание

Caption

Подпись группы

Columns

Число колонок в группе

Items

Массив, содержащий названия кнопок в группе

ItemIndex

Номер выбранного элемента, нумерация с нуля

Для демонстрации работ RadioButton выполним несложное упражнение. Поместим компонент GroupBox в область формы, поместим два компонента RadioButton в GroupBox, т.е. GroupBox является для них контейнером. Зададим подпись всей группы: «Выбрать пол» и подписи кнопок: «мужской», «женский». С помощью ShowMessage отобразим выбор пользователя. Форма имеет следующий вид:

На кнопку «Что Вы выбрали?» напишем обработчик:

procedure TForm1.RadioButton1Click(Sender: TObject);

begin

if Radiobutton1.Checked then

ShowMessage('Men');

if Radiobutton2.Checked then

ShowMessage('Woman');

end;

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

На событие OnClick компонента RadioGroup напишем обработчик:

procedure TForm1.RadioGroup1Click(Sender: TObject);

begin

case RadioGroup1.ItemIndex of

0: color:=clWhite;

1: color:=clBlue;

2: color:=clRed;

end;

end;

Обратите внимание, при задании свойства формы вместо того, чтобы писать: Form1.color, мы пишем – color, т.е. не задаем имя объекта. В этом случае система полагает, что имеется ввиду свойство текущего окна.

Задания для самостоятельной работы

  1. Разработать простой калькулятор на четыре арифметических операции. Внешний вид окна:

  1. Разработать кнопочный калькулятор, подобный тому, что в Windows, внешний вид окна может быть, например, таким:

Контрольные вопросы

  1. Разветвляющийся алгоритм, чем он отличается от линейного алгоритма?

  2. Для чего используется логический тип данных?

  3. Какие значения может принимать переменная логического типа?

  4. Как задать переменную логического типа?

  5. Какие операции определены на логическом типе данных?

  6. Какой оператор языка Pascal позволяет задать разветвляющийся алгоритм?

Занятие 5. Как устроена программа в Delphi

Понятие проекта. Структура проекта

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

Набор файлов, который хранит исходный код вашего приложения, называется проектом. На основе файлов проекта создается выполнимый файл (*.exe). Давайте рассмотрим, из каких основных файлов состоит проект.

Структура проекта изображена на рис.

Рис. Структура проекта

Где

*.dfm содержит графическое представление формы;

*.pas – модуль Pascal;

*.res хранит ресурсы проекта;

*.dof хранит опции проекта.

Проект может содержать несколько форм, с каждой формой связаны два файла – с расширениями dfm и pas. Файл с расширением dfm – хранит графическое представление формы, именно сюда вы помещаете интерфейсные элемента, такие как кнопки, списки, поля редактирования. Файл с расширением pas – является модулем Pascal, именно там хранится программный код, связанный с формой, например обработчики событий формы. При этом каждому файлу dfm обязан соответствовать файл pas. Обратное неверно, т.е. модуль может не иметь связанной с ним формы, файла dfm.

С каждым проектом связан один файл с расширением dof, в котором хранятся опции проекта. А вот ресурсных файлов res может быть, вообще говоря, несколько, но, как правило, с каждым проектом связан один файл ресурсов, который хранит иконки, картинки, рисунки вашего приложения.

В своей папке вы обнаружите также файлы с расширением dcu. Эти файлы являются результатом компиляции модулей Pascal, они создаются каждый раз, когда компилируется проект. Значит, их хранение не является обязательным и они могут быть удалены.

Также можно не хранить файлы, расширение которых начинается со знака "~", например ~dfm, ~pas. Это файлы отката текстового редактора. Этими файлами можно воспользоваться, если испорчены основные файлы dfm и pas.

С каждым проектом связан один файл с расширением cfg – это файл конфигурации проекта.

Программа на Pascal, которая запускает приложение на выполнение, часто также называется проектом и хранится в файле с расширением *.dpr. Для доступа к этому файлу выполним меню Project | View Source.

program Project1;

uses

Forms,

Unit1 in 'Unit1.pas' {Form1};

{$R *.RES}

begin

Application.Initialize;

Application.CreateForm(TForm1, Form1);

Application.Run;

end.

Рассмотрим структуру программы. Ключевое слово program задает имя проекта (программы). Ключевое слово uses позволяет подключить к проекту формы и модули. А вот {$R *.RES} – это не комментарий, это опция компилятора, которая подключает к проекту ресурсный файл. Между операторами begin .. end располагается основной текст программы. Для каждого приложения создается глобальный объект Application. Этот объект отсутствует в палитре компонентов, недоступен он и на этапе разработки приложения. Но некоторые из его общедоступных (public) свойств могут быть установлены во время проекти­рования в диалоге задания опций проекта на страницах Forms и Application.

Метод Initialize – это первый метод, вызываемый для любого Delphi-приложения. Он инициализирует объект Application.

Метод CreateForm – загружает очередную форму в оперативную память.

Проект Delphi обычно состоит из нескольких вызовов метода CreateForm по количеству самозагружаемых (auto-create) форм. Приложение может создавать форму динамически во время выполнения с помощью того же метода CreateForm, но это не всегда требуется. По умолчанию первая созданная форма становится главной формой приложения.

Метод Run запускает приложение на выполнение и передает управление главной форме.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]