Скрыть одну форму и показать другую - PascalABC.NET
Формулировка задачи:
Пытаюсь чтобы на кнопку одна форма скрылась, а вторая открылась (формы сделаны с помощью графического интерфейса).
(unit1.form1 должна скрыться, а unit2.form1.показаться), но вылезает такая ошибка скрин, что делать?
Скрин:
Файл проекта:
Файл 1-ой формы:
Файл 2-ой формы:
Решение задачи: «Скрыть одну форму и показать другую»
textual
Листинг программы
{$apptype windows}
{$reference System.Windows.Forms.dll}
uses
System.Text,
System,
System.Windows.Forms,
System.Net;
var
myButton1,myButton2,myButton3: Button;
myForm1 := new Form;
myForm2 := new Form;
procedure MyButton1Click (sender: Object; e: EventArgs);
begin
myForm1.Hide;
myForm2.Show;
end;
procedure MyButton2Click (sender: Object; e: EventArgs);
begin
myForm2.Hide;
myForm1.Show;
end;
procedure MyButton3Click (sender: Object; e: EventArgs);
begin
myForm1.Close
end;
begin
myButton1 := new Button;
myButton1.Text := 'Перейти на форму 2';
myButton1.AutoSize := True;
myButton1.Left := 60;
myButton1.Top := 50;
myButton1.Width := 150;
myButton2 := new Button;
myButton2.Text := 'Перейти на форму 1';
myButton2.AutoSize := True;
myButton2.Left := 60;
myButton2.Top := 50;
myButton2.Width := 150;
myButton3 := new Button;
myButton3.Text := 'Завершить работу';
myButton3.AutoSize := True;
myButton3.Left := 60;
myButton3.Top := 150;
myButton3.Width := 150;
myForm1.Text:='Form1';
myForm2.Text:='Form2';
myForm1.Controls.Add(myButton1);
myForm1.Controls.Add(myButton3);
myForm2.Controls.Add(myButton2);
myButton1.Click += myButton1Click;
myButton2.Click += myButton2Click;
myButton3.Click += myButton3Click;
Application.Run(myForm1);
end.
Объяснение кода листинга программы
- Объявлены переменные myButton1, myButton2, myButton3 типа Button.
- Создана форма myForm1 и myForm2.
- Определены процедуры обработчики событий кликов по кнопкам myButton1, myButton2, myButton3.
- В обработчике события клика по myButton1 выполняется myForm1.Hide (скрыть myForm1) и myForm2.Show (показать myForm2).
- В обработчике события клика по myButton2 выполняется myForm2.Hide (скрыть myForm2) и myForm1.Show (показать myForm1).
- В обработчике события клика по myButton3 выполняется myForm1.Close (закрыть myForm1).
- Создаются кнопки с указанными текстами и свойствами.
- Кнопки добавляются на соответствующие формы.
- Обработчики событий клика по кнопкам привязываются к процедурам myButton1Click, myButton2Click, myButton3Click.
- Запускается приложение с формой myForm1.