電気製品のレベル調整用スライダーのようなコントロールです。
以下にマウスの右ボタンで表示されるポップアップメニューから指定できるデフォルトのスタイルを示します。
- Styles
Owner Draw
全てのドローを通知する。
Read Only
スライダーを読取り専用とする。(操作不可)
Snap to Increment
設定された値に自動的に調整する。
Ribbon Strip
ホーム位置からの移動分のシャフトを特定カラーで塗る。
- Orientation
Horizontal
スライダーを水平に配置する。
(Vertical)
スライダーを垂直に配置する。
- Shaft Offset
Bottom(Left)
スライダーを左端または最下部に配置する。
Center
スライダーを中央に配置する。
Top(Right)
スライダーを右端または最上部に配置する。
- Buttons Position
Left(Bottom)
ボタンを左または最下部に配置する。
None
ボタン位置を制御しない。
Right(Top)
ボタンを右または最上部に配置する。
- Home Position
Left(Bottom)
基準値を左端または最下部とする。
Right(Top)
基準値を右端または最上部とする。
- Primary Scale
Ruler 1
スケールを上か右に表示する。
Ruler 2
スケールを下か左に表示する。
- Basic Styles
Visible
コントロールを作成と同時に可視状態に指定する。
Disabled
コントロールを使用禁止状態に指定する。
Group
現在のダイアログ内でグループを構成する。
Tabstop
タブキーによる選択肢に含まれるようにする。
スライダー・コントロールでは、以下のイベントに対してコードを設定し、動作を決定します。
取得イベント Init ダイアログオープン時にコントロールが初期化される際に発生 Changed スライダーを放した際に発生 Changing スライダーの位置を変更した際に発生 GetFocus コントロールが入力フォーカスを得る際に発生 LoseFocus コントロールが入力フォーカスを失う際に発生 Drop オブジェクトがドロップされる際に発生
各々のコントロールには、そのコントロールを操作する為の専用のファンクションが用意されています。以下にスライダー・コントロールで使用可能なファンクションを示します。
Range スライダーの目盛の範囲を設定します。
result = Dialog.Control.Range( ticks1 [, spacing1] [ticks2 [, spacing2]] )
ticks1:主目盛
ticks2:副目盛
spacing1,spacing2:目盛間の間隔Item スライダーのラベルとサイズを設定します。
oldValue = Dialog.Control.Item( [tick] [, "Value" | "Size"] [, newValue] )
Value:ラベル名
Size:ラベルサイズSelect スライダーの位置を取得/設定します。
oldTick = Dialog.Control.Select( [newTick] )Style コントロールのスタイルマスクを取得/設定します。
oldStyle = Dialog.Control.Style( [newStyle] )Font テキストのフォントを取得/設定します。
oldFont = Dialog.Control.Font( [newFont] )Color コントロールのカラー属性を設定/取得します。
oldColor = Dialog.Control.Color( [attribute [, newColor]] )
attribute(+:前景, -:背景, A:アクティブ, |:非アクティブ, H:ハイライト, D:ディセーブル, T:テキスト, M:メニュー, B:ボーダー)
Color("#index"か、"#red green blue"の形式が使用可能。RGBは0~255で指定)
- アクティブ・テキストの前景色を黒にする場合
oldColor = Dialog.Control.Color("AT+", "#0 0 0")ID コントロールのウィンドウIDを取得します。
id = Dialog.Control.ID()Position コントロールの位置とサイズを取得/設定します。
result = Dialog.Control.Position( [x [, y [, dx [, dy] ] ] ] )
x:X座標, y:Y座標, dx:幅, dy:高さDrag コントロールのドラッグを可能/不可能にします。
oldDragData = Dialog.Control.Drag( [newDragData] )
DragData(type[,type,...,type][:format][=data])
typeは、OS/2の使用可能タイプ(ファイルの場合)か、任意のタイプ。
formatは、STRINGかFILEを指定。省略時はSTRING。
dataは、ドロップ先に渡したい文字列。
- コントロールを"Custom"タイプとしてドラッグ可能に指定
CALL Dialog.Control.Drag "Custom"
- コントロールをドラッグ不可に指定
CALL Dialog.Control.Drag ""Drop コントロールへのドロップを可能/不可能にします。
oldDropData = Dialog.Control.Drop( [newDropData] )
DropData(type[,type,...,type][:format][=operation])
typeは、OS/2の使用可能タイプ(ファイルの場合)か、任意のタイプ、あるいはANY。
formatは、ドロップされるデータをSTRINGかFILE、ANYで指定。省略時はSTRING。
operationは、ファイルのドロップ時に受入れる動作を指定します。MOVE(移動)、COPY(コピー)、LINK(シャドウの作成)、あるいはANY(全て)です。
- "Custom"タイプのコントロールのみドロップ可能に指定
CALL Dialog.Control.Drop "Custom"
- コントロールへのドロップを不可に指定
CALL Dialog.Control.Drop ""Visible コントロールの可視属性を取得/設定します。
oldState = Dialog.Control.Visible( [newState] )
State(0:不可視,1:可視)Enabled コントロールの活動状態を取得/設定します。
oldState = Dialog.Control.Enabled( [newState] )
State(0:Disabled,1:Enabled)Hide コントロールを非表示状態にします。
CALL Dialog.Control.Hide ["Update" | "Noupdate"]
Update:直ちに非表示状態にします。(デフォルト)
Noupdate:非表示にはしませんが、Showコマンドが使われるまで更新を抑制します。Show コントロールを表示状態にします。
CALL Dialog.Control.ShowTop コントロールを最前面に移動します。
CALL Dialog.TopBottom コントロールを最背面に移動します。
CALL Dialog.BottomEnable コントロールを活動状態にします。
CALL Dialog.Control.EnableDisable コントロールを非活動状態にします。
CALL Dialog.Control.DisableFocus コントロールに入力フォーカスを与えます。
CALL Dialog.Control.FocusIsDefault コントロールを現在のデフォルトにします。
CALL Dialog.Control.IsDefault ["Object" | "Say"]
Object:コントロールを現在のデフォルトにします。
Say:コントロールをSAYコマンドの出力先に指定します。
Dialoghint:コントロールをダイアログに定義されたヒントの出力先に指定します。
Controlhint:コントロールを各コントロールに定義されたヒントの出力先にします。Controls 全てのコントロールのリストを取得します。
CALL Dialog.Control.Controls [stem]Classes 全てのコントロール・クラスのリストを取得します。
CALL Dialog.Control.Classes [stem]