2009-08-13 63 views
1

我有兩種形式(一種主要形式和一種子域形式)。我喜歡在CodeGear的IDE面板上進行拖放操作。意味着我可以移動它們並與其他組件合併。可拖動組件?

然而,我所要求的不同的東西:

我想給submain形式拖入主要形式,並把它變成一個像TFRAME或者,換句話說,一些沒有按」不要動,但保持靜態。反過來 - 我希望能夠通過任何機會將表格從TFrame中取出。

我的想法是否可行?如果是這樣,你能解釋一下如何實現它嗎?

編輯:一個想法來到我head.Is可以創建一個繼承所有控件/組件從TForm的,這樣的部件留在窗體上TFRAME,但是當我試圖把它變成TFRAME,它只是將可見性更改爲false,並顯示TFrame包含Form.Is中的所有可能內容?

回答

1

將主窗體的DockSite屬性設置爲True,然後處理OnDockOver和OnDockDrop事件。

您可以在Docking演示中看到VCL的拖放停靠支持示例(安裝在WinXP中的C:\ Documents and Settings \ All Users \ Documents \ RAD Studio \ 5.0 \ Demos \ DelphiWin32 \ VCLWin32 \ Docking,Delphi 7中的C:\ Program Files \ Borland \ Delphi7 \ Demos \ Docking。)Delphi 2009將與Delphi 2007位於同一文件夾位置;只需將路徑中的5.0更改爲6.0即可。