16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル
"コンテナのコンポからTFormを探す"
この発言は #00695 佐藤 充男 さんのコンテナのParentからTFormを探す に対するコメントです
こんにちは、佐藤 充男です。
☆説明
複数のコンテナコンポーネント(例:TPanel)の上に置いてあるコンポー
ネント(例:TButton )から、TForm を探す例です。
☆準備
1.フォームにPanel1を置き、その上にPanel2を置きます。
2.Panel2の上にButton1 、Button2 、Button3 を置きます。
こんな感じに配置します
+-------------------------------+
| Form1 |
+-------------------------------+
|+-------------------------+ |
|| Panel1 | |
||+----------------------+ | |
||| Panel2 | | |
|||+---------++---------+| | |
|||| Button1 || Button2 || | |
|||+---------++---------+| | |
||| +---------+ | | |
||| | Button3 | | | |
||| +---------+ | | |
||+----------------------+ | |
|+-------------------------+ |
+-------------------------------+
☆補足
・自作コンポーネントでPostMessage(Parent.Handle,WM_NEXTDLGCTL,0,0);を
呼び出す場合、TPanelやTPageControl上にコンポを置くと反応がなかった
ので作りました。
・Delphi 4 でテスト。
[サンプルソース]
----------------------------------------------------------------------
procedure TForm1.Button1Click(Sender: TObject);
var
ParentForm: TCustomForm;
begin
ParentForm := GetParentForm( Button1 );
PostMessage( ParentForm.Handle, WM_NEXTDLGCTL, 0, 0 );
end;
procedure TForm1.Button2Click(Sender: TObject);
var
ParentForm: TCustomForm;
begin
ParentForm := GetParentForm( Button2 );
PostMessage( ParentForm.Handle, WM_NEXTDLGCTL, -1, 0 );
end;
----------------------------------------------------------------------
98/10/26(月) 05:48am LDM03756 佐藤 充男
Original document by 佐藤 充男 氏 ID:(LDM03756)
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。
Copyright 1996-2002 Delphi Users' Forum
|