掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
イベントプロシジャ内で、コントロール名を判断して処理を振り分けるには (ID:23999)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
お世話様です。よろしくお願いいたします。 複数のコントロールで共用しているイベントにおいて、どのコントロールから飛んできたかにより処理を振り分けたいと思います。 イベント内で、コンポーネント名を判断して、 if TComponent(Sender).Name='AAA' then 処理A else if TComponent(Sender).Name='BBB' then 処理B else if TComponent(Sender).Name='CCC' then 処理C としています。 1行で判断するコントロールが複数になり or で結んだりし始めると「TComponent(Sender).Name=」が何回も必要で、だんだん長くなってしまいます。 これを、case文のように case TComponent(Sender).Name of 'AAA' : 処理A; 'BBB' : 処理B; 'CCC' : 処理C; end; というようにする方法はありますでしょうか? または、AAA,BBB,CCCのコントロールでは処理Aをさせたいとして、集合型のような考え方で、 var Target: set of ( AAA, BBB, CCC); などと宣言しておいて、 if TComponent(Sender).Name in Target then 処理A というようにする方法はありますでしょうか? 以上、よろしくお願いいたします。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.