Delphi XE Pro - 関数にまとめたい
昨日、開発中のソフトにウィンドウサイズを変更するメニューを加えたのだが
b0003577_16143057.jpg

ソースは、愚直過ぎる感じがして
b0003577_16142974.jpg

良い改良案はないか?と 2枚目のソース部分だけTwitterに貼付けて聞いたところ
3名の方から返答をいただいた。

---------------------------------------------------------------------------



@plus7 さんから
変形させるForm,変形後の幅,高さを格納するプロパティをもったTButtonの派生クラスを作る
と返答をいただいたけど、「ボタンじゃなくメニューで変えます」と伝えたら、
ではTActionを派生させる

-------------------------
@ikaneko さんから
TComponent(Sender).NameをTRegEx.Split(ちげー
TComponent(Sender).TagにHeight*10000+Widthを入れ(ちげー

これは1枚目のスクリーンショットを見せての返答
800,600\r\n1024,768\r\n1200,800をFormCreate時にメニューに動的に追加、TagにIndex(めどい

-------------------------
@onimaro2010 さんから
おそらく、同じようなイベントを一杯書きたくないんだと勝手に予想。こういう場合、私はメニューのTagプロパティにユニークな値をそれぞれ設定してイベントの中でTagプロパティを見てFormのサイズを振り分けるようにするかな。
そうすれば、ウィンドウサイズの設定に関しては全て1個のイベントハンドラで処理できるようになる。と明後日の方向からの回答をしてみる。


しかも今朝 @onimaro2010 さんがブログの記事にしていてビックリ!
Tagプロパティを使う - au2010の日記

-------------------------
しかし、知識がなさ過ぎて自分には理解ができなかったorz
[PR]

by arigayas | 2011-04-05 16:24 | Delphi Programming | Trackback(1) | Comments(0)
トラックバックURL : http://arigayas.exblog.jp/tb/15185053
トラックバックする(会員専用) [ヘルプ]
※このブログはトラックバック承認制を適用しています。 ブログの持ち主が承認するまでトラックバックは表示されません。
Tracked from arigayasのblog at 2011-04-15 05:07
タイトル : Delphi XE Pro - フォームのサイズを指定し..
最初のサイズ。 800x600 こんな感じでフォームのサイズを変更するコードを書いた。 procedure TForm1.N800x600Click(Sender: TObject); begin  Form1.Width := 800;  Form1.Height := 600; end; procedure TForm1.N1024x768Click(Sender: TObject); begin  Form1.Width := 1024;  Form1.Height...... more
<< chaika でスレを表示して... Delphi XE Pro -... >>