線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1197
推到 Plurk!
推到 Facebook!

关于重复显示MID子窗体问题

尚未結案
tomc
一般會員


發表:41
回覆:35
積分:15
註冊:2003-07-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-03-08 15:53:32 IP:59.36.xxx.xxx 訂閱
procedure TfrmMDIMain.ToolButton2Click(Sender: TObject); 
var
frmOUT:TfrmInStorage;
begin
OP:='OUT'; //出库操作
TI:='出库';
if not assigned(frmOUT) then
begin
frmOUT:=TfrmInStorage.Create(self);
end;
frmOUT.Show;
end;

为什么以上操作不能跳出子窗体?

我是想入库,出库,退货,都使用 TfrmInStorage这个窗体,只是操作的资料库不同而已.
但在MDI主窗口调用时,怎么让每个功能只显示一次该子窗体?
比如只显示入库窗体时,只能显示一次,而此时如果再打开出库,一样也可以显示出库窗体,但只能显示一次.
------
交流.學習
skywin
一般會員


發表:0
回覆:2
積分:0
註冊:2007-05-06

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-03-21 23:42:24 IP:218.107.xxx.xxx 訂閱
不是很明,因为frmOUT:TfrmInStorage;而如果你入库再来一个frmIN:TfrmInStorage;那个,frmOUT跟frmIN是两回事的。
代码如下:
procedure TfrmMDIMain.ToolButton2Click(Sender: TObject);
var
frmOUT:TfrmInStorage;
begin
OP:='OUT'; //出库操作
TI:='出库';
if not assigned(frmOUT) then
begin
frmOUT:=TfrmInStorage.Create(self);
end;
frmOUT.Show;
end;
procedure TfrmMDIMain.ToolButton3Click(Sender: TObject);
var
frmIN:TfrmInStorage;
begin
OP:='IN'; //出库操作
TI:='出库';
if not assigned(frmIN) then
begin
frmIN:=TfrmInStorage.Create(self);
end;
frmIN.Show;
end;
那么,frmOUT跟frmIN是两回事的.那么你分别点ToolButton2,就会出显frmOUT,点ToolButton2,就会出显frmIN,因为frmOUT、frmIN是继承于TfrmInStorage的两个不同的窗体.这正常啊。
frappe
中階會員


發表:88
回覆:114
積分:95
註冊:2008-10-21

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-03-22 17:13:56 IP:115.83.xxx.xxx 訂閱
有點看不懂你的問題,但是我猜大概是這樣
1.frmOUT變數你設成Local變數了,這樣就無法用來判斷視窗有沒有重複開啟
2. frmOUT:=TfrmInStorage.Create(self);
我不知道對不對,我都寫application.createform(TfrminStorage,frmOUT);
3.子Form要記得設MIDChild才會顯示
4.MDI child Create之後就會顯示,不用再寫show了

===================引 用 tomc 文 章===================
procedure TfrmMDIMain.ToolButton2Click(Sender: TObject);
var
frmOUT:TfrmInStorage;
begin
OP:='OUT'; //出库操作
TI:='出库';
if not assigned(frmOUT) then
begin
frmOUT:=TfrmInStorage.Create(self);
end;
frmOUT.Show;
end;

为什么以上操作不能跳出子窗体?

我是想入库,出库,退货,都使用 TfrmInStorage这个窗体,只是操作的资料库不同而已.
但在MDI主窗口调用时,怎么让每个功能只显示一次该子窗体?
比如只显示入库窗体时,只能显示一次,而此时如果再打开出库,一样也可以显示出库窗体,但只能显示一次.
系統時間:2024-05-18 12:04:49
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!