Tips

スクロールエリアに目印(チェックマーク)を表示

日付2002/02/22
ID01-847
バージョン6.5.x and 6.7.x
プラットフォームWindows and Mac OS

これから紹介するテクニックを使うとスクロールエリアに目印(チェックマーク)を付けることができます。

この例では"sArea1"と"sArea2"の二つのスクロールエリアを作成します。

Step 1:
最初にすることは、配列の要素に値を代入します。この例ではOn Loadイベントで実行されるメソッドを作成します。
If(Form event=On Load)
ARRAY TEXT(sArea1;5)
sArea1{1}:="Element 1"
sArea1{2}:="Element 2"
sArea1{3}:="Element 3"
sArea1{4}:="Element 4"
sArea1{5}:="Element 5"

ARRAY TEXT(sArea2;5)
sArea2{1}:=""
sArea2{2}:=""
sArea2{3}:=""
sArea2{4}:=""
sArea2{5}:=""
End if

Note:
sArea2の空文字列("")を代入した5要素からなる配列を作成します。このオブジェクトは要素がクリックされた際に目印を表示するために使用します。

重要:
両方のスクロールエリアの配列要素数は同数でなければなりません。

Step2:
次のコードをスクロールエリアのオブジェクトメソッドに記述します。このコードはスクロールエリアをクリックすることで実行されます。

If (Form event=On Clicked )
SetElementChecker (->sArea2;Self->)
End if

Step 3:
メソッド名"SetElementChecker"でプロジェクトメソッドを作成します。

` Project Method: SetElementChecker
` $1 - Pointer to the array to turn on the marker
` $2 - Selected position
C_POINTER($1)
C_LONGINT($2;$vlPlatform;$vlSystem;$vlMachine)
If ($1->{$2}="")
PLATFORM PROPERTIES($vlPlatform;$vlSystem;$vlMachine)
If ($vlPlatform=3)
$1->{$2}:=Char(161)
Else
$1->{$2}:=Char(195)
End if
Else
$1->{$2}:=""
End if

Step 4
2つのスクロールエリアをグループ化します。作業点順は次のようになります。
1. 2つのオブジェクトを選択状態にする
2."オブジェクト"メニューから"グループ"を選択します。

注意:
sArea2の表示フォントの設定で、目印になる記号が変わります。