2009-08-13 4 views
1

私は2つのフォーム(1つのメインフォームと1つのサブフォーム)を持っています。ドラッグ&ドロップでCodeGearのIDEパネルのようなことをしたいのですが、それらを移動して他のコンポーネントとマージすることができます。しかし、私は別の何かを求めているドラッグ可能なコンポーネントですか?

私は、メインフォームにsubmainフォームをドラッグすると、TFrameのか、言い換えれば、「doesnの何かのようなものに変えたいのですが静かにしておいてください。逆に、私はいつでもTFrameからフォームを取得できるようにしたいと思います。

私のアイデアは可能ですか?可能であれば、それを達成する方法を説明できますか?

EDIT:それは、アイデアは、それが可能なコンポーネントをフォームに滞在するようTFormはからのすべてのコントロール/コンポーネントを継承するのTFrameを作成するために、私のhead.Isに来たが、私はTFRAMEにそれを回すしようとすると視界をfalseに変更し、Formからのすべてのものを含むTFrameを表示します。可能なのは?

答えて

1

メインフォームのDockSiteプロパティをTrueに設定し、OnDockOverおよびOnDockDropイベントを処理します。

Dockingデモ(C:\ Documents and Settings \ All Users \ Documents \ RAD Studio \ 5.0 \ Demos \ DelphiWin32 \ WinXPのWinXPにインストールされている)では、VCLのドラッグアンドドロップのドッキングサポートの例を見ることができます。 VCLWin32 \ Docking、C:\ Program Files \ Borland \ Delphi7 \ Demos \ DockingのDelphi 7用)Delphi 2009は、Delphi 2007と同じフォルダの場所にあります。パス内の5.0から6.0を変更するだけです。

関連する問題