| GetEventType | ||
戻り値 | イベントタイプ | |
| 1 | NsbKeyOrButton | ハードキー又は、シルクボタン等が押された |
| 2 | NsbPenDown | ペンダウンイベント |
| 3 | NsbPenUp | ペンアップイベント |
| 4 | NsbJogDial | Jogダイヤルイベント |
| サンプルプログラム |
Select Case GetEventType()
Case 1
'---- ハードキー又は、シルクボタン等が押された
Case 2
'---- スクリーンをスタイラスで押された
Case 3
'---- スクリーンからスタイラスが離された
Case 4
'---- ジョグダイヤルで何らかの処理が行われた
End Select
|
| GetKey | ||
| 戻り値 | ジョグダイヤルの操作 | |
| 0 | ジョグダイヤルを時計周りに回した | |
| 1 | ジョグダイヤルを反時計回りに回した | |
| 2 | ジョグダイヤルを長押ししている | |
| 3 | ジョグダイヤルを押しながら時計周りに回した | |
| 4 | ジョグダイヤルを押しながら反時計周りに回した | |
| 5 | ジョグダイヤルを押した | |
| 6 | ジョグダイヤルを放した | |
| サンプルプログラム | ||||||||||||||||
Dim theKey as Integer
If GetEventType()=NsbJogDial Then
theKey=Asc(GetKey())
Select Case thekey
Case 0
'---- "JogUp"
Case 1
'---- "JogDown"
Case 2
'---- "JogPressRepeat"
Case 3
'---- "JogPageUp"
Case 4
'---- "JogPageDown"
Case 5
'---- "JogPress"
Case 6
'---- "JogRelease"
End Select
End If
|
| PowerJOGの場合 |
|
ほとんど、プログラム的に気にする必要はありません。 ただ、JogPressイベント発生タイミングが押した時では無く、JogReleaseが発生する直前になっています。 対策としては、JogDialを押した時の処理をJogPressで行わず、JogReleaseで行う事で解決します。 また、JogPressRepeatが発生するとPowerJOGメニューが開く為、 極力JogPressRepeatイベントをNS Basicで使わないようにしておく事が望ましいようです。 |
| JogLauncherの場合 |
|
JogLauncherが有効になっているとJogUp、JogDownイベントはハードボタンの上下に置き換わります。 その為、JogDialのイベントはJogUp、JogDown以外は通常通り認識出来ますが、 JogUp、JogDownイベントはGetEventTypeではNsbKeyOrButton(1)が戻り値となり、GetKeyでは、11、12が戻り値となります 対策としては、GetEventTypeでNsbKeyOrButton(1)が認識された時にも処理を実行するようにしておくと良いでしょう。 ※この事からも、JogDialとハードキーの動作内容を同じにしておいた方がユーザーの混乱が少ないようです 最新版のJogLauncherでは、特定のアプリ上でしか、ハードキーのエミュレートを行わなくなりました。 最新版を使う場合には、通常通りJogDialイベントが認識出来るようになります また、PowerJOG同様にJogPressRepeatが発生するとJogLauncherメニューが開く為、 極力JogPressRepeatイベントをNS Basicで使わないようにしておく事が望ましいようです。 |
| JogCATの場合 | ||||
|
本来JogCATは、必要なPalmwareのみに機能拡張出来るような設定があるのですが、 ランタイムが別にあるNSBのアプリではJogCATの機能を除外する事が出来ません。 ※NS BasicアプリにJogCATが対応されました。 NS Basic製アプリも除外出来ます。 さらに、JogCATが有効時にNSBのアプリ上でJogDialを押すと(離すと?)予定表が起動してしまいます。 ※正確には予定表ボタン(ハードキー)に割り当てられているPalmwareが起動してしまうようです。 この対策としては、SetEventHandledでJogDialイベントをキャンセルしてしまう事で解決します。
JogDialに対応させるつもりが無いアプリを作成する時も、SetEventHandledで JogDialのイベントをキャンセルするようにするとJogCAT動作中のClieで誤動作を防ぐ事が出来ると思います
|
| 優先度 | ボタンのラベル | |||
| 優先度1 | Cancel | キャンセル(半角カナ) | Previous | 戻る |
| 優先度2 | No | いいえ | 閉じる | Close |
| 優先度3 | Done | 終了 | - | - |
| 優先度4 | Yes | はい | OK | - |
| 優先度5 | 上記に該当しない場合にHomeに戻る | |||