オプションボタン
複数の選択肢のうちの一つを選択させるためによく使われるコントロールです。 プロパティ
他のコントロールと共通のプロパティは次のものです。 状態
モデルでの操作
モデルでオプションボタンを操作するときに陥りやすいのは、モデルの State プロパティとコントローラで利用できる State プロパティ (偽プロパティである) の値の違いです。 モデル State: integer コントローラ State: boolean この場合、値の型を間違うと正しく設定されませんので注意が必要です。 グループ化
同じグループにあるオプションボタンは、グループ内でひとつしか選択できないようになります。 複数のオプションボタンをグループ化するには、「タブの順序」を連続するように設定します。ひとつでもタブの順序が開いているオプションボタンは別のグループになります。オプションボタンのグループを複数作成する必要があるときには、グループ間の「タブの順序」をオプションボタン以外のコントロールに割り当てます。 グループボックスで囲ってもグループ化されません。 フォーム上でのグループ化
フォーム上に配置したオプションボタンはタブの順序ではグループ化できません。その代わりにグループ化したいオプションボタンに同じ名前を付けます。 同じ名前を付けると XNameContainer で区別できなくなるため、最初に見つかったコントロールが取得されるようになってしまいます。その代わりに同名グループとして取得します。これには com.sun.star.awt.XTabControllerModel インターフェースを利用します。 Sub optionbutton_10 oDoc = ThisComponent oForm = oDoc.getDrawPage().getForms().getByIndex(0) oControls = Array() oForm.getGroupByName("OptionButton1",oControls) sValue = "" For i = 0 To UBound(oControls) step 1 If oControls(i).State = 1 Then sValue = oControls(i).RefValue Exit For End If Next Select Case sValue Case "On" msgbox "on" Case "Off" msgbox "off" End Select End Sub コントローラ
コントロールのコントローラオブジェクト
|