掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ドッキングについて (ID:29996)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
KHE00221様 レス有り難うございました。 上記の件を検証してみました。これでOKです。 有り難う御座います。 その後動作確認をいろいろしていましたら、次の質問が出て来ましたので どなたかお教え下さい。 ■1:ドッッキングされるパネルにフォームをドッキングした状態から そのフォームを手ではなし、再びパネルにドッキングした時 同じ位置(パネルの下側)にドッキングしません。 下記のソースの[A]をコメントアウトして、 パネルの上をドラッグすると、ドッキング場所(表現が変)が、 上下左右に枠が表示されます。 いつも[A]の位置にドッキングする対処法を教えて下さい。 ■2:同じコードを会社のパソコン(XP)で走らせると、 MEMOコントロールとドッキングフォーム間に仮想(?)のスプリッターが あります。それを上下に動かすと、MEMO及びフォームの表示範囲が 狭くなったり、大きくなったりしてしまいます。 何か対処法が有るのでしょうか、教えて下さい。 家のパソコン(2x)だとスピリッターも表示されない(なぜ?) 以上ですが、おわかりになる方の返事を気長にお待ちしています。 そのソース procedure TfrmMain.Button1Click(Sender: TObject); begin // フォームを画面の外に表示 Form1.Left := -2000; // フォームの表示 Form1.ManualDock(DockPanel, nil, alCustom); Form1.Show; Memo2.ManualDock(DockPanel, nil, alTop); end; procedure TfrmMain.DockPanelDockDrop(Sender: TObject; Source: TDragDockObject; X, Y: Integer); var lRect: TRect; begin frmMain.Memo2.Align := alNone; //alClientから frmMain.Memo2.Height := DockPanel.Height div 2; frmMain.Memo2.Align := alTop; end; procedure TfrmMain.DockPanelDockOver(Sender: TObject; Source:TDragDockObject;X, Y: Integer; State: TDragState; var Accept: Boolean); var lRect: TRect; begin lRect.TopLeft := DockPanel.ClientToScreen (Point(0,DockPanel.Height div 2)); lRect.BottomRight := DockPanel.ClientToScreen (Point(DockPanel.Width, DockPanel.Height)); Source.DockRect := lRect; →→→[A] end; procedure TfrmMain.DockPanelUnDock(Sender: TObject; Client:TControl; NewTarget: TWinControl; var Allow: Boolean); begin Memo2.Align := alClient; end; procedure TfrmMain.Splitter1Moved(Sender: TObject); begin frmMain.Memo2.Height := DockPanel.Height div 2; end; −−−−−−−−−−−−−−−−−−−−− procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean); begin frmMain.Memo2.Align := alClient; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.