Day2day Opportunism

まぁ、平たく言うと「雑記」がだらだらと・・・

3つのOptionButtonでハマル

#VB6

Frameの上に3つのOptionButtonを横一列に配置したフォームで、

検索処理などの重い処理の実行時に、ユーザーに操作させないために

Enabledプロパティを操作したところ、Form_Load直後だけ左端をクリックしても

右端が選択状態になるという不思議現象に悩まされた。

Private Sub CtrlFunc(Byval flg As Boolean)

opt01.Enabled = flg

opt02.Enabled = flg

opt03.Enabled = flg

frm.Enabled = flg

End Sub

こんなコードだったんだが、何故か初回だけおかしなことに…

いろいろ試したところ、どうやらOptionButtonは選択状態が標準らしい…

なので、上記の処理を通るとopt03が選択される。ということらしい。

結果として、

Private Sub CtrlFunc(Byval flg As Boolean)

frm.Enabled = flg

opt01.Enabled = flg

opt02.Enabled = flg

opt03.Enabled = flg

End Sub

という形にしたところ問題無く動作している。

なんだか納得いかないものをすこーし感じるが…