喫茶XRAYトップページ

[スレッド全体
]

[6178] Re4:RadioGroupについて返信 削除
2012/7/6 (金) 18:36:42 Mr.XRAY
>以下にすると期待通り動作します。

そうか,つまり,Createして新規表示した時も,既にインスタンスがある
フォームを再表示した時も,同じ動作仕様にしたいということなんですね.

>それはそうと、「どうしてか?」ですね。

必要があれば説明ということで... (^^;

>Form2:=TForm2.Create(Self);

これは「重箱」ではなく,こちらの方がいいと思います.私自身は.
というのは,Form1から,Form2を表示しているので,親子関係が明確です.
生成,解放の管理がしやすいと思っています.
Applicationの方がいい場合もあると思うのですが,
今は例が思いつきません.

[6180] Re5:RadioGroupについて返信 削除
2012/7/9 (月) 10:32:00 sato
▼ マスター
▼ Saraさん
▼ Syakeさん
みなさんありがとうございました。
Form2.ActiveControl := Form2.RadioGroup1;// nil;でも可
で思うような動作になりました。
尚、今後は親子関係が明確を明確にするため、
Form2:=TForm2.Create(Self);とします。
(知らなかったとはいえ、長い間親子関係が不明瞭でした)

以下は途中で気が付いた疑問ですが、重箱の隅なのか大事なことなのか
分かりません。質問ではありませんので、どうぞお構いなく。
これまでFormの表示時に最初にカーソルを持って行きたいときに
TabOrderを変えたりで面倒だったのですが、ActiveControlの
設定で楽になりました。
#1
Form2.ActiveControl := Form2.RadioGroup1;でも
Form2.ActiveControl := Form2.Edit1;でも
Form2.RadioGroup1.ItemIndex := 1;が設定できるのですが
Form2.ActiveControl := nil;でもできるのが?です。
#2
CheckBox1はFocusがあると、点線で囲まれるので、
RadioGroup1も点線で囲まれているときがFocusが当たっていると
思っていましたが、RadioGroup1.SetFocus;とやると点線が
消えるのが?です。


[▼次のスレッド]
INCM/CMT
Cyclamen v3.82