PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
21450 | 04/07/29 09:21:38 | RE(2):PB6.5: MDIメニューからのイベントの呼び出し方 By たにやん |
21445 | 04/07/28 12:57:24 | RE(1):PB6.5: MDIメニューからのイベントの呼び出し方 By ハム |
21443 | 04/07/27 14:34:24 | PB6.5: MDIメニューからのイベントの呼び出し方 By たにやん |
カテゴリ:スクリプトの記述
日付:2004年07月29日 09:21 発信者:たにやん
題名:RE(2):PB6.5: MDIメニューからのイベントの呼び出し方
ハムさん、おはようございます。
↑すごい!挨拶を書こうと思ったら既に書かれてる(w
>たにやんさん、こんにちは。
>
>次の手順で行えば可能です。
>
>1、シートウィンドウにユーザイベント(例えばUE_BTN_CLICKED)を定義します。
> ユーザイベントにはウィンドウ上のコマンドボタンのclickedイベントを起動する
> コードを記述します。
> 尚、このイベントはシートを継承で作成し先祖ウィンドウに定義しておくと個々の
> ウィンドウで定義する必要はなくなります。またこの場合は、スクリプトは子孫で
> 記述したほうが良いでしょう。継承関係をうまく作成すればもっと効率よくなります。
>2、メニュー項目のclickedイベントにシートのユーザイベント(例えばUE_BTN_CLICKED)を
> 呼出すコードを記述します。
> 例)
> // アクティブシートの変数を宣言します。
> window activesheet
> activesheet = w_frame.GetActiveSheet()
>
> IF IsValid(activesheet) THEN
> activesheet.EVENT dynamic TRIGGER UE_BTN_CLICKED()
> ELSE
> return
> END IF
>
>もしたにやんさんのコードを有効にする場合には
>Window gw_this //アクティブ画面
>で ”Window”を実際に使用するウィンドウオブジェクトの名前にしなければならず
>汎用的に作成するのが難しくなります。
>ウィンドウオブジェクトの先祖クラスのWindowクラスはコマンドボタンを配置されていない為
>コンパイルでエラーになります。
なるほど。ウィンドウにユーザーイベントを作ってそこからコマンドボタンのスクリプトを呼ぶのですね♪
ってことはウィンドウにコマンドボタンのスクリプトを書いて、コマンドボタンやメニューから
そのイベントを呼べば効率がよさそうですね。(^^;
う?ん次回から作り方を変えてみます。
どうもありがとうございます。m(_ _)m
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS (記載なし)
DBMS その他
Browser InternetExplorer5.X
Server SoftWare
OS (記載なし)
DBMS Oracle 8.0
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.