Clickcount
Clickcount -> 戻り値
引数 | 型 | 説明 | |
---|---|---|---|
戻り値 | Integer | ← | 連続したクリックの回数 |
このコマンドはスレッドセーフではないため、プリエンプティブなコードには使えません。
説明
Clickcount コマンドは、マウスクリックイベントのコンテキストにおいて、ユーザー同じマウスボタンを素早く連続でクリックした回数を返します。通常、このコマンドはダブルクリックを意味する2を返します。
このコマンドによってリストボックスのヘッダーやフッターにおいてダブルクリックを検知したり、トリプルクリック、あるいはそれ以上のクリックを扱えるようになります。
全てのマウスボタンは個別のクリックイベントを生成します。例えば、ユーザーがダブルクリックをした場合、最初のクリックに対してイベントが送られ、Clickcountは1を返します。そして二つ目のクリックに対してイベントがもう一つ送られ、Clickcount は2を返します。
このコマンドはOn Clicked、On Header Click または On Footer Click フォームイベントおいてのみ使用されるべきものです。そのため、デザインモードで検索をし、フォームプロパティあるいは特定のオブジェクトにおいて適切なイベントが正常に選択されているかどうかをチェックする必要があります。
On Clicked と On Double Clicked フォームイベントが両方とも有効化されている場合、Clickcount が返す値は以下の様に変遷します:
- On Clicked イベントに1が返されます
- On Double Clicked イベントに2が返されます
- On Clicked イベントに2+nが返されます
例題 1
以下のコードストラクチャーをリストボックスヘッダー内に配置すると、シングルクリックとダブルクリックを管理することが出来るようになります:
Case of
:(Form event code=On Header Click)
Case of
:(Clickcount=1)
... //シングルクリックアクション
:(Clickcount=2)
... //ダブルクリックアクション
End case
End case
例題 2
ラベルは入力可能ではないですが、トリプルクリックをすると入力可能になります。ユーザーにラベルの編集を許可したい場合、以下の様なコードをオブジェクトメソッドに記載します:
If(Form event code=On Clicked)
Case of
:(Clickcount=3)
OBJECT SET ENTERABLE(*;"Label";True)
EDIT ITEM(*;"Label")
End case
End if