窗口怎么切换等,初学DELPHI(20分)

  • 主题发起人 主题发起人 xiaoke26
  • 开始时间 开始时间
X

xiaoke26

Unregistered / Unconfirmed
GUEST, unregistred user!
刚学DELPHI,不清楚窗口怎样切换,如:
1.怎样实现由一个窗口切换到另一个窗口,而本窗口关闭
2.还是上面的问题,就是上一个窗口不关闭,仍然显示
还有就是怎么回到原来的窗口,或另外再产生一个新窗口
 
HIDE 和 SHOW
 
兴建窗口
 
还不是太清楚,望再指教
还有porject option里的auto_create和available forms对窗口的定义起了什么作用
 
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
btn1: TButton;
btn2: TButton;
procedure btn1Click(Sender: TObject);
procedure btn2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
//实现由一个窗口切换到另一个窗口,而本窗口关闭
procedure TForm1.btn1Click(Sender: TObject);
begin
form2.show; //显示另一个窗口
form1.Hide; //本窗口关闭
end;

//上一个窗口不关闭,仍然显示
procedure TForm1.btn2Click(Sender: TObject);
begin
form2.show; //显示另一个窗口
end;
end.

unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm2 = class(TForm)
btnNewForm: TButton;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure btnNewFormClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
uses Unit1;
{$R *.dfm}
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
form1.show; //回到原来的窗口
end;
//产生一个新窗口
procedure TForm2.btnNewFormClick(Sender: TObject);
begin
with TForm.Create(application) do
try
caption:='新窗口';
showmodal;
finally
free;
end;
end;
end.
 
经常使用快捷键F11、F12切换窗口
 
谢谢,尤其随风!

不过还有个问题 一个应用程序的主窗口是不能被close的?
是不是一被close,程序就会退出?
 
hide隐藏自己
formname.hide隐藏指定的窗体
formname.show显示指定的窗体
不能close了,close就关了,不能用show方法了
在用之前需要引入单元,
比如你在form2里引用form1,系统会询问你是否将unit1引入到unit2中
你点击确定就行了
 
我也是一个初学者这些让我 受益非浅~!
谢谢各位啊!
大富翁真是好!
 
谢谢各位,让我获益非浅
我还有一个问题就是在调试的时候F7和F8好象没什么不同啊,F7怎么就没单步跳到函数里面,是不是DELPHI自带的函数不能跳进去啊?
 
后退
顶部