PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
2223 | 98/07/02 15:25:05 | RE:RE:RE:PB5.0.01: KeyDown関数について By ko |
2222 | 98/07/02 18:09:46 | RE:PB5.0.01: KeyDown関数について By まこと |
2221 | 98/07/02 11:41:57 | RE:RE:PB5.0.01: KeyDown関数について By こてちゅ |
2220 | 98/07/02 11:20:51 | RE:PB5.0.01: KeyDown関数について By OGR |
2219 | 98/07/02 10:52:09 | PB5.0.01: KeyDown関数について By ko |
カテゴリ:旧電子会議室
日付:1998年07月02日 11:41 発信者:こてちゅ
題名:RE:RE:PB5.0.01: KeyDown関数について
>>ウィンドウ上であるキーが押下されたときある処理を実行させるには、ウィンドウの「Key」イベントで「
>>KeyDown関数」を呼び出せば良いと思うのですが、データウィンドウにフォーカスされている状態で同様にある
>>キーが押下されたときある処理を実行させるには、どのようにすればよいのでしょうか?
>>
>>Helpを見ると、「pbm_keydown」「pbm_dwnkey」に対して???と書いてあるのですが、ちょっと意味が解りま
>>せん。
> スクリプトでは必要最小限のイベント?しか用意されていないので、それ以外の必要なイベントは自分で作成するしか
>ありません。そこでユーザーイベントというものが用意されています。イベントを作成したいコントロールのスクリプトで
>「宣言」の「ユーザーイベント」で使用したいイベントを作成します。イベント名を適当に付け(すでにあるものと重複しな
>いように)使用したいイベントIDを張りつければ使用できます。
>
>てことでいいのかな?
>
>
ヘルプの意味については、その通りですね。
で、ちょっと補足説明。
えっと、データウィンドウ上にフォーカスがある場合は、WindowオブジェクトのKeyイベントでは取得できません。
そこで、データウィンドウ上にフォーカスがある場合に、何かしらのキーが押下された事を取得する為のユーザイベントを割り当てます。その時のイベントIDが「pbm_dwnkey」です。WindowオブジェクトのKeyイベントのイベントIDが「pbm_keydown」となっています。
で、処理としては、データウィンドウに貼り付けたユーザイベント内でWindowのKeyイベントをPostするのがいいと思います。そうすると、データウィンドウ上にフォーカスがある時でも、WindowのKeyイベントと同様の動きをするはずですから。
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS (記載なし)
DBMS (記載なし)
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.