Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2012-2-zburnuk_DELPHI.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.17 Mб
Скачать

Проект 6. «взаємозв'язані форми»

У переважній більшості додатки містять не одну, а декілька форм, які можуть з'являтися при виникненні певних подій. Наприклад, додатки з базами даних часто містять десятки різних форм.

Мета роботи - навчитися створювати додатки з декількох взаємозв'язаних форм.

  • після запуску програми з'являється вікно.

  • після клацанія мишею на назві предмета відкриваеться візно з назвою цього предмету.

  • для виходу з програми необхідно клацнути мишею на кнопці «Вихід».

Опис плану розробки програми

Спершу|для початку| створюємо додаток|застосування| з|із| трьох зв'язаних форм. Розглянемо|розглядуватимемо| процес створення|створіння| додатка|застосування| по кроках:

Запускаємо Delphi| і у нас автоматично створюється форма1| (Form1|). У властивості Caption| форми назвемо|накликатимемо| її - «Головна». Delphi| автоматично робить|чинить| цю форму головною| або стартовою – вона першою відкривається|відчиняє| при запуску додатка.|застосування|……….. …. ……

Додамо|добавлятимемо| до нашого застосування ще 4 форми, які назвемо|накликатимемо| «Географія» і «Фізика», «Математика» і «Хімія».

Зараз треба «познайомити» всі ці форми. Тобто Головна| форма повинна «знати» про існування форм «Географія» і «Фізика», «Математика» і «Хімія», а ті, у свою чергу|в свою чергу|, повинні знати про існування Головної і один про одного. Це потрібно для того, щоб ми могли з|із| однієї форми викликати|спричиняти| іншу.

Зробимо активною форму «Головна» (просто клацнемо по ній мишею), зайдемо в меню Файл -> Использовать модуль, де вкажемо на використання форми «Географія» (Unit2). Потім знову зайдемо і вкажемо модуль Unit3 (форма «Фізика»). Так само модуль Unit4(«Математика»),Unit5 («Хімія»).

Зараз форма «Головна » знає про існування форм «Географія» , «Фізика», «Математика» і «Хімія» і може до них звертатися.|обертатися|

Отже, ми «познайомили» форми, а зараз їх зв'яжемо, тобто при події в одній формі з'являється|появляється| інша.

Розмістимо на формі «Головна» 5 кнопок:

  • Географія - для відкриття|відчиняти| форми «Географія»

  • Фізика – для відкриття|відчиняти| форми «Фізика»

  • Математика – для відкриття|відчиняти| форми «Математика»

  • Хімія - для відкриття|відчиняти| форми «Хімія»

  • Вихід – для виходу з|із| додатка|застосування|

Аналогічно на формах «Географія», «Фізика», «Математика» і «Хімія» розмістимо кнопки «Закрити|зачиняти|» для закриття цих форм.

Зробимо клацання|натиснення| кнопці «Географія», на формі «Головна» для переходу в редактор.

Редактор коду програми:

procedure| TForm1|.Button1Click(Sender|: TObject|);

begin|

Form2|.Show

end|;

Метод Show виводить звичайне вікно, при цьому ми можемо щось робити в іншому вікні, не закриваючи першого. Так само необхідно прописати код для інших для інших кнопок.

Остання Button5 (Вихід) – без коментарів.

На всяк випадок можна звернутись до лістингу програми.

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;

type

TForm1 = class(TForm)

Button1: TButton;

Button2: TButton;

Button3: TButton;

Button4: TButton;

Button5: TButton;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Button5Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

uses Unit3, Unit2, Unit5, Unit4, Unit6;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

begin

Form2.Show

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

Form3.Show

end;

procedure TForm1.Button3Click(Sender: TObject);

begin

Form4.Show

end;

procedure TForm1.Button4Click(Sender: TObject);

beginForm5.Show

end;

procedure TForm1.Button5Click(Sender: TObject);

begin

Close

end;

end.

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