全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:873
推到 Plurk!
推到 Facebook!

關於建立表單的語法

答題得分者是:careychen
fireflybug
一般會員


發表:18
回覆:36
積分:15
註冊:2008-07-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2008-09-16 11:17:03 IP:220.130.xxx.xxx 訂閱
請問先進們:

下面這兩句程式碼是不是都是建立表單的語法?功能是否都一樣?有差異嗎?

[code delphi]
Application.CreateForm(TLoginForm, LoginForm);
LoginForm := TLoginForm.Create(Application);
[/code]
------
今天的事,留到後天再說....
careychen
尊榮會員


發表:41
回覆:580
積分:959
註冊:2004-03-03

發送簡訊給我
#2 引用回覆 回覆 發表時間:2008-09-16 19:04:13 IP:59.126.xxx.xxx 訂閱
Application.CreateForm(TLoginForm, LoginForm);
作用在於,如果使用 Application 來 Create 一個 Form ,並且把 Create 好之後的 Form
放在 Form1 這個變數裡,而當 Application 發現沒有 MainForm 時,會以這個所 Create 出的 Form 當成 MainForm
使用,而有 MainForm 程式才可以 Run


LoginForm := TLoginForm.Create(Application);
這個只是 Create 出一個 TLoginForm ,將 Create 後的放在 LoginForm 這個變數裡,
並且指定說他的【Owner】是 Application ,但【不是】Application 的 MainForm


所以你可以像如下的方式來玩看看

在 dpr 的程式碼,一般是像如下的程式碼
[code delphi]
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run; // 當執行到這一行時,因為有【MainForm】,所以程式會執行到 MainForm 關閉為止
end;
[/code]


而像如下的方法
[code delphi]
begin
Application.Initialize;
Form1 := TForm1.Create(Application);
Application.Run; // 當到這一行時,因為找不到 MainForm 所以程式就結束了
end;
[/code]

不過,下次發問的時候,請先善用站內的搜尋功能,
搜尋【Application.CreateForm】可查到很多討論的案例

------
價值的展現,來自於你用哪一個角度來看待它!!
編輯記錄
careychen 重新編輯於 2008-09-16 20:53:07, 註解 請善用本站搜尋功能‧
fireflybug
一般會員


發表:18
回覆:36
積分:15
註冊:2008-07-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2008-09-16 21:22:13 IP:220.132.xxx.xxx 訂閱
恩,大大的說明非常的詳盡,難怪我使用下面的方式,程式似乎沒有在執行。

下次我會善用關鍵字多作搜尋,謝謝大大的解答^^
------
今天的事,留到後天再說....
系統時間:2024-05-06 0:04:27
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!