关于窗体关闭时的一个小问题(20分)

  • 主题发起人 主题发起人 carrie4002
  • 开始时间 开始时间
C

carrie4002

Unregistered / Unconfirmed
GUEST, unregistred user!
A窗体运行时以按纽来判断某个输入是否满足某个条件。
满足,则须关闭当前窗体,并显示B窗体。
B窗体的Create过程和Formshow()过程都有初始化代码。
该如何实现?
 
楼下的回答[:D]
 
请大虾们帮忙。谢谢。
 
如果A是应用程序的主窗体 则
procedure TForm1.Button1Click(Sender: TObject);
begin
if 条件满足 then
begin
B.Show;
A.Hide;
end;
end;
如果A不是应用程序的主窗体

procedure TForm1.Button1Click(Sender: TObject);
begin
if 条件满足 then
begin
B.Show;
A.close;
end;
end;
 
谢谢楼上的。
在Project->Options->forms里,把mainform设置为A窗体,
把Createforms里添加了A和B两个窗体。
和你代码一样,A窗体的判断分支中我也用了A.Hide,但B是
主窗体,所以,退出系统的按纽在B窗体上。但选择B上的"退出系统"
后,B是关闭了,但被hide过的A,还在任务栏上没关闭。这不是我想要的。
(注:我的A窗体是登陆窗体,B窗体是主窗体。呵呵)
 
program Project2;

uses
Forms,
Unit1 in 'Unit1.pas' {Form1};

{$R *.res}

begin
Application.Initialize;
Application.CreateForm(TFormB, Form1);
Application.CreateForm(TFormA, Form1);
Application.Run;

这里的第一个创建的是主窗体啊 既B是主窗体啊 A不是
你看看你的 B窗体是不是第一个创建的 
end.
 
谢谢楼上的。
在Project->Options->forms里,把mainform设置为A窗体,
把Createforms里添加了A和B两个窗体。
和你代码一样,A窗体的判断分支中我也用了A.Hide,但B是
主窗体,所以,退出系统的按纽在B窗体上。但选择B上的"退出系统"
后,B是关闭了,但被hide过的A,还在任务栏上没关闭。这不是我想要的。
(注:我的A窗体是登陆窗体,B窗体是全屏主界面窗体。呵呵)
 
晕呀..在工程开始处处理,不要在窗口中处理.
 
我晕 你的A窗体是主窗体,你在B窗体的关闭按钮里 用B.close 主窗体A当然不会关闭了
你在B窗体的关闭按钮里得用Application.terminate;
 
谢谢。结贴。
 
后退
顶部