- 869 名前:デフォルトの名無しさん [2016/10/10(月) 12:51:39.56 ID:kOR6lwYv.net]
- RadioBottan、オプションボタン関係。
C:\tool\FreeBASIC\inc\win\winuser.bi const BS_RADIOBUTTON = &h00000004 const BS_AUTORADIOBUTTON = &h00000009 'ラジオボタン const DLGC_RADIOBUTTON = &h0040 const DFCS_BUTTONRADIOIMAGE = &h0001 const DFCS_BUTTONRADIOMASK = &h0002 const DFCS_BUTTONRADIO = &h0004 declare function CheckRadioButton(byval hDlg as HWND, byval nIDFirstButton as long, byval nIDLastButton as long, byval nIDCheckButton as long) as WINBOOL declare function IsDlgButtonChecked(byval hDlg as HWND, byval nIDButton as long) as UINT const MFT_RADIOCHECK = &h00000200 declare function CheckMenuRadioItem(byval hmenu as HMENU, byval first as UINT, byval last as UINT, byval check as UINT, byval flags as UINT) as WINBOOL: '表示枠上部メニュー関係 が見つかった範囲。 FbEdit の *.rcファイル編集画面で、特異的内容は、 Auto, Groupの2つ。 前者は、クリックしたときの作画処理みたい。後者(Group)がややこしかった。 (Group) にFalse を指定しておくと、存在するすべてのRadioBottanが一群として処理されてしまう。 排他時に、他の選択マークを消してくれるという便利な機能もあるけれども。 芋づる式仕様対応、混乱と混沌を司る吾輩としては、「ちょっと違ったソフト」を作る必要があるときに、 既存のソフトに追記して作成する。もちろん、既存の内容はそっくり残しておく。 つまり、ちょっとだけ異なるサブルーチンがわんさかある、ソースリストが出来上がる。 一番手間が食うのが、人-機械インターフェース、つまり、手作業の分野なので、手作業対応のルーチンの共用が前提。 RadioBottanが1セットしか使えないというのは、致命的な問題となる。 declare function CheckRadioButton() を見ると、連続したID番号をふって、一連の群(Group)として取り扱うらしい。 というわけで、現在 *.Rc ファイルから、関係情報を読みだして、一覧表を作り、ついでに参照るーちんも作ってくれるルーチンを作成中。
|

|