有關form的問題 |
|
tailen
中階會員 發表:82 回覆:109 積分:63 註冊:2002-04-08 發送簡訊給我 |
|
阿子
站務副站長 發表:120 回覆:230 積分:201 註冊:2002-03-18 發送簡訊給我 |
這個問題常看人在問,方法很多,我提供一個
{* ******************************** CreateChildForm ************************* *} {* =================================Blue Fox================================= *} {* 目 的: 呼叫ChildForm並防止重複產生 {* 關 鍵 字: MDI;Form {* 輸 入 值: const FormName: string {* 傳 回 值: CreateChildForm:TCustomForm {* 呼 叫 式: {* 說 明: {* 日 期 由 注解 {* ---------- ---- ------- {* 2001/6/14 levi 建立 {* =================================Blue Fox==============================2.0 *} procedure CreateChildForm(FormName: string); var ICont: Integer; Form: TForm; begin Form := nil; for ICont := 0 to Screen.FormCount - 1 do if Screen.Forms[ICont].ClassName = FormName then begin Form := Screen.Forms[ICont]; Form.BringToFront; end; if Form = nil then begin Form := TFormClass(FindClass(FormName)).Create(Application); end; Form.WindowState := wsMaximized; end;從思考取勝一切~q
------
從思考取勝一切~q |
sun_chih_yen
一般會員 發表:40 回覆:33 積分:13 註冊:2003-10-03 發送簡訊給我 |
|
cashxin2002
版主 發表:231 回覆:2555 積分:1937 註冊:2003-03-28 發送簡訊給我 |
您好! 提供一個小弟經常用到的方法, Form元件的Create有兩種方法, AutoCreate(在專案執行時即自動建立), Available(非自動建立, 需程式碼控制建立), 就此兩種方法, 判斷其是否已開啟的程式碼如下:
1. AutoCreate
begin if Form1.Showing then //也可寫成if Form1.Visible = True then Form1.BringToFront else Form1.Show; end;2. Available begin if Form1 <> nil then Form1.BringToFront else Form1 := TForm1.Create(Application); Form1.Show; end;參考看看! ===================== 努力,相信會獲得美麗! 忻晟
------
忻晟 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |