Студопедия — Создание оконных приложений. Пример простой программы
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Создание оконных приложений. Пример простой программы

 

от ________________ № ___

 

«Об утверждении тем и назначении руководителей выпускных
квалификационных работ студентов специальностей 220703; 151901; 150406
230115; 030912; 080114; 034702; 120714»

(наименование в кавычках)

 

ПОДГОТОВЛЕН:

 

Зам.директора по УНР       Л.И. Кисин
(должность разработавшего проект документа)   (подпись, дата)   (инициалы, фамилия)

Должность Инициалы, фамилия Подпись Дата
Зам. директора по Э и П О.И. Пленкин    
Начальник ИАО Г.Г. Мозгова    

 

С приказом ознакомлены:

 

Должность Инициалы, фамилия Подпись Дата
Зав. отделением ТМ и ЛП Ю.Ю. Лактионов    
Зав. отделением ПКС и АТП В.Н. Степанова    
Зав. отделением Э и П К.Ю. Зинякова    

 

Создание оконных приложений. Пример простой программы

Создадим простое приложение, в котором при щелчке пользователя на кнопке в окне появлялась бы какая-нибудь надпись.

 

Для этого необходимо выполнить следующие шаги.

1. Запустите Delphi.Откройте новое приложение. Для этого надо выполнить команду File | New Application. Ответьте «No» на вопрос Delphi, хотите ли вы сохранить изменения в вашем проекте.

2. Перенесите на пустую форму кнопку Button со страницы Standard палитры компонентов. Для этого выделите пиктограмму кнопки (она шестая слева) и затем щелкните курсором мыши в нужном вам месте формы. На форме появится кнопка, которой Delphi присвоит имя по умолчанию — Button1.

3. Аналогичным образом перенесите на форму с той же страницы Standard палитры компонентов метку Label (она на странице третья слева). В этой метке в процессе выполнения приложения будет появляться текст при нажатии пользователем кнопки. Delphi присвоит ей имя Label1.

4. Разместите компоненты на форме примерно так, как показано на рис.

5. Выделите на форме компонент Button1 — кнопку. Перейдите в Инспектор Объектов и измените ее свойство Caption (надпись), которое по умолчанию равно Button1 (имя, которое по умолчанию присвоила этому компоненту Delphi) на «Нажми».

6. Сотрите текст в свойстве Caption метки Label1, чтобы он не высвечивался, пока пользователь не нажмет кнопку приложения. Теперь вам осталось только написать оператор, который заносил бы в свойство Caption метки Label1 нужный вам текст в нужный момент. Этот момент определяется щелчком пользователя на кнопке. При щелчке в кнопке генерируется событие OnClick. Следовательно, обработчик этого события вы и должны написать.

7. Выделите кнопку Button1 на форме, перейдите в Инспектор Объектов, откройте в нем страницу событий (Events), найдите событие кнопки OnClick (оно первое сверху) и сделайте двойной щелчок в окне справа от имени этого события. Это стандартный способ задания обработчиков любых событий. Вы окажетесь в окне Редактора Кода и увидите там текст:

procedure TForm1.Button1Click(Sender: TObject);

begin

end

Заголовок этой процедуры складывается из имени класса вашей формы (TForm1), имени компонента (Button1) и имени события без префикса On (Click).

8. Напишите в обработчике оператор задания надписи метки Label1. Этот оператор может иметь вид:

Label1.Caption:= 'Hello, World!';

Оператор присваивает метке строку текста «Hello, World!».

Процедура обработчика будет иметь вид

procedure TForm1.Button1Click(Sender: TObject);

begin

Label1.Caption:= 'Hello, World!';

end

 

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

Этот инструмент очень удобен во многих случаях, когда вы не очень точно помните последовательность перечисления параметров какой-нибудь функции, или когда не уверены в имени какого-то свойства. Но иногда, когда вы хорошо освоитесь с Delphi, эти подсказки, может быть, начнут вас раздражать. Тогда вы можете отключить Подсказчика Кода, выполнив команду Tools | Editor Options и на странице Code Insight выключив опцию Code Completion.

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

Теперь посмотрите код программы, который создала с вашей помощью Delphi. Этот код содержится в двух файлах — головном файле программы с расширением .dpr и в файле модуля с расширением .pas. Головной файл .dpr — один на весь проект, а файлов модулей столько, сколько форм вы ввели в свой проект. Добавление в проект новой формы вы можете осуществить командой File | New Form, а удалить форму из проекта можно командой Project | Remove from Project.

Ниже приведен текст модуля описанного выше простого примера, который вы можете увидеть в окне Редактора Кода. Подробные комментарии в этом тексте поясняют, куда и что в этот код вы можете добавлять.

unit Unit1;

 

interface // Открытый интерфейс модуля

 

{Список подключаемых модулей}

Uses

Windows, Messages, SysUtils, Classes, Graphics,

Controls, Forms, Dialogs, StdCtrls;

 

{Объявление класса формы}

Type

TForm1 = class (TForm)

Label1: TLabel;

Button1: TButton;

procedure Button1Click (Sender: TObject);

private // Закрытый раздел класса

{ Private declarations }

{Сюда могут помещаться объявления переменных, функций и

процедур, включаемых в класс формы, но не доступных для

других модулей}

public // Открытый раздел класса

{ Public declarations }

{Сюда могут помещаться объявления переменных, функций и

процедур, включаемых в класс формы и доступных для

других модулей}

 

end; {Завершение объявления класса формы}

Var

Form1: TForm1;

{Сюда могут помещаться объявления типов, констант,

переменных, функций и процедур, к которым будет доступ

из других модулей, но которые не включаются в класс формы}

implementation // Реализация модуля

 

{$R *.DFM} - директива компилятора

 

{Сюда могут помещаться предложения uses, объявления

типов, констант, переменных, к которым не будет доступа

из других модулей. Тут же должны быть реализации всех

объявленных в разделе interface функций и процедур,

а также могут быть реализации любых дополнительных, не

объявленных ранее функций и процедур.}

 

procedure TForm1.Button1Click(Sender: TObject);

Begin

Label1.Caption:= ' Hello, World!';

end;

 

end.

 

Модуль начинается с ключевого слова unit, после которого пишется имя модуля. Оно совпадает с именем файла, в которым вы сохранили свой модуль. По умолчанию для первого модуля имя равно Unit1, для второго Unit2 — и т.д.

Текст модуля состоит из двух основных разделов:

interfaceоткрытый интерфейс модуля,

implementationреализация модуля.

Все, что помещается непосредственно в раздел interface (типы, переменные, константы, функции, процедуры), может быть использовано другими модулями программы.

Все, что помещается в раздел implementation — внутреннее дело модуля. Внешние модули не могут видеть типы, переменные, константы, функции и процедуры, размещенные в разделе реализации.

В разделе interface после предложения uses, содержащего список подключаемых библиотечных модулей, вы можете видеть объявление класса вашей формы, подготовленное Delphi. Имя класса вашей формы — TForm1. В класс включены те объекты которые вы разместили на форме — метка Label1 и кнопка Button1. Кроме того в класс включено объявление того обработчика щелчка на кнопке, который вы создали — процедуры Button1Click.

В классе предусмотрено также два раздела:

privateзакрытый раздел класса, и

publicоткрытый раздел класса.

То, что вы или Delphi объявите в разделе public, будет доступно для других классов и модулей. То, что объявлено в разделе private, доступно только в пределах данного модуля.

После завершения объявления класса формы вы можете видеть строки

Var

Form1: TForm1

Это объявляется переменная Form1 класса TForm1, т.е. объявляется ваша форма как объекта класса TForm1.

Затем следует раздел реализации implementation, который начинается с директивы компилятора, смысл которой, вообще говоря, знать не обязательно. Надо только следить, чтобы случайно не стереть эту директиву. Далее в разделе implementation вы можете видеть реализацию объявленной в классе процедуры Button1Click с единственным оператором, который вы ввели в программу сами.

В раздел implementation вы можете сами включать помимо обработчиков событий любые объявления глобальных переменных, констант, типов, и описания функций и процедур. Если вы хотите из данного модуля получить доступ к другому разработанному вами модулю (другой форме), то в раздел implementation вам надо включить оператор uses, в котором указать файл модуля, доступ к которому вы хотите получить. Например, предложение

uses Unit2, Unit3;

обеспечит вам доступ ко всем элементам, объявленным в интерфейсе модулей Unit2 и Unit3.




<== предыдущая лекция | следующая лекция ==>
П Р И К А З | Отображение текста в надписях компонентов Label и Panel

Дата добавления: 2015-08-27; просмотров: 313. Нарушение авторских прав; Мы поможем в написании вашей работы!



Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кишечный шов (Ламбера, Альберта, Шмидена, Матешука) Кишечный шов– это способ соединения кишечной стенки. В основе кишечного шва лежит принцип футлярного строения кишечной стенки...

Принципы резекции желудка по типу Бильрот 1, Бильрот 2; операция Гофмейстера-Финстерера. Гастрэктомия Резекция желудка – удаление части желудка: а) дистальная – удаляют 2/3 желудка б) проксимальная – удаляют 95% желудка. Показания...

Ваготомия. Дренирующие операции Ваготомия – денервация зон желудка, секретирующих соляную кислоту, путем пересечения блуждающих нервов или их ветвей...

Ганглиоблокаторы. Классификация. Механизм действия. Фармакодинамика. Применение.Побочные эфффекты Никотинчувствительные холинорецепторы (н-холинорецепторы) в основном локализованы на постсинаптических мембранах в синапсах скелетной мускулатуры...

Шов первичный, первично отсроченный, вторичный (показания) В зависимости от времени и условий наложения выделяют швы: 1) первичные...

Предпосылки, условия и движущие силы психического развития Предпосылки –это факторы. Факторы психического развития –это ведущие детерминанты развития чел. К ним относят: среду...

Studopedia.info - Студопедия - 2014-2024 год . (0.013 сек.) русская версия | украинская версия