掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
コンポーネント上のボタンが押されたとき (ID:38530)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
こんにちは.Mr.XRAYです. 残念ですが,TuboDelphiは手元にないので確認はできませんが,Delphi 2010での動作確認です. 「これらのボタンを押したとき」というは,マウスのボタンをクリックしたと解釈します. http://www.hyuki.com/writing/techask.html#procedure コンポーネントの内部でイベント類を処理するには,その動作に応じたメソッドを オーバライド(override)して定義して,そこに書きます. 以下,マウスのクリックの場合です. TPanelはTControlから派生しています.TFromもTControlから派生していますので, TFormで動作のテストができます. 以下の手順を試してみてください. (1) 新規のプロジェクトを作成 (2) interface部のどこか(public部でもよい)に入力位置(カーソル位置)を移動 (3) [Ctrl] + [Space]を押す コード補完のリストが表示される (4) それを表示したままキー[C],[l](エル)とタイプし,Clickを選択する protected部が作成され,以下のコードが追加される procedure Click; override; (6) [Ctrl]+[Shit]を押したまま[C]のキーを押すと implementation部に以下のコードができるので,//*の部分を追加 procedure TForm1.Click; begin inherited; ShowMessage('AAA'); //* end; http://mrxray.on.coocan.jp/Delphi/Others/A_IDETechnique.htm#07 (7) コンパイルして実行.From1のどこかをマウスでクリックするとダイアログが現れる これは,Form1のマウスクリックのイベントを作成しなくとも,内部でイベントが 発生したのと同じことになります. これと同じコードをコンポーネントのコードに追加すれば同じ機能を実現できます. もちろん,コードを手でタイプしてもいいのですが,上の方法はスペルの間違いを防げます. もっとも,この例では引数が全くないので,自分でタイプしもいいかも知れませんね. 参考図書 中村拓男著 Delphiコンポーネント設計&開発完全解説 Amazonにあります. ではがんばってください.
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.