我是一名Delphi新手,但我試圖瞭解使用Spy ++的TApplication和TfrmMain窗口之間的關係。看起來TfrmMain窗口是具有適當屏幕座標的真實窗口,但TApplication窗口出現在Windows任務欄中。而且,他們似乎根本不相互關聯。一個不是另一個的父窗口,那麼窗戶如何鏈接在一起?爲什麼非UI窗口是獲取Windows任務欄按鈕的窗口?任何Delphi專家都可以幫助我理解這一點嗎?TfrmMain和TApplication - 這些是爲了什麼?
3
A
回答
9
TApplication是封裝您的應用程序並處理Windows Messaging之類的類。 TfrmMain將是TForm的一個子類,它將成爲你的應用程序「主要表單」。
所以基本上,TApplication是控制器可以這麼說,它擁有並創建TfrmMain,並將消息轉發給它或它的任何孩子。
看着你projectname.pas文件,你會看到類似這樣的:
program Project1;
uses
Forms,
Unit1 in 'Unit1.pas' {Form1};
{$R *.RES}
begin
Application.Initialize;
Application.CreateForm(TfrmMain, frmMain) ;
Application.Run;
end.
了應用程序的類型爲TApplication的的。
2
使用Delphi BEFORE Delphi 2007版本製作的應用程序,「祕密窗口」將成爲Vista Flip 3D或預覽中的可見窗口。下面是一篇很好的文章,解釋如何在Delphi 2006(及更早版本)上編譯Delphi應用程序,以便不顯示「祕密窗口」:here
相關問題
- 1. 這些Node.js和javascript框架是什麼?他們做了什麼?
- 2. 爲什麼這些位反轉了?
- 3. 這是爲什麼編譯和發生了什麼?
- 4. 這些角色是什麼,他們爲什麼這樣渲染?
- 5. 這些類型是什麼?
- 6. 這些李爲什麼不是中心?
- 7. 這些佈局是什麼
- 8. 這些API是什麼?
- 9. 這些查詢爲什麼這麼慢?
- 10. 這是爲什麼m.request叫了兩聲
- 11. 這是爲什麼來了空
- 12. 什麼是ASO和BSO,使用這些的優勢是什麼
- 13. 這些FindBug消息顯示了什麼?
- 14. MDX:是什麼這些
- 15. 這些字節是什麼?
- 16. WinForms - 這些是什麼?
- 17. 這些數字是什麼?
- 18. 這些是什麼意思?
- 19. 這些是什麼date_default_timezones?
- 20. 這些是什麼? ه҈҉҉҉҉҉҉҉҉҉҉҉҉҉҉҉҉҉҉҉҉҉҉҉҉҉҉
- 21. 這些控件是什麼?
- 22. 什麼是這些插件?
- 23. 這些指針發生了什麼?
- 24. 這次休息時寫了些什麼;
- 25. 這些在maven pom.xml中做了什麼
- 26. 這些Javascript表達式(+!)做了什麼?
- 27. 這些視圖做了什麼?
- 28. 這是什麼編碼/爲什麼這些.txt文件不是純文本?
- 29. 這些類型轉換的結果是什麼?爲什麼?
- 30. 爲什麼這些默認參數是這樣定義的?
您知道如何使用Win32代碼獲取TfrmMain的控制器窗口句柄Delphi應用程序)?奇怪的是,TfrmMain窗口似乎不屬於TApplication窗口。 – 2008-12-09 01:52:01