PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
5137 99/02/18 13:15:47 RE(6):ユーザオブジェクト:ウィンドウ間で情報をやりとりするテクニック By kin
5136 99/02/18 12:21:07 RE(5):ユーザオブジェクト:ウィンドウ間で情報をやりとりするテクニック By Taka
5131 99/02/18 11:38:18 RE(4):子ウィンドウ(ポップアップウィンドウ含む)から親ウィンドウをアクセスする By M.M
5129 99/02/18 11:19:26 RE(3):PB6: ユーザオブジェクトのコントロールにポップアップウィンドウから...補足 By kin
5127 99/02/18 08:05:42 RE(2):PB6: ユーザオブジェクトのコントロールにポップアップウィンドウからデータを渡したい By リエッチ
5125 99/02/17 23:37:14 RE(1):PB6: ユーザオブジェクトのコントロールにポップアップウィンドウからデータを渡したい By Taka
5123 99/02/17 21:11:50 PB6: ユーザオブジェクトのコントロールにポップアップウィンドウからデータを渡したい By kin

カテゴリ:ユーザオブジェクト
日付:1999年02月18日 12:21 発信者:Taka
題名:RE(5):ユーザオブジェクト:ウィンドウ間で情報をやりとりするテクニック

こんにちは。

>ところが、ポップアップウィンドウのDWで選択した値をユーザオブジェクト上の
>sleに渡してOKボタンをキックしたいのですが、入力用ユーザオブジェクトは
>いろいろなウィンドウで使用するため、インスタンスを特定できないんです。
>(しかも、一つのウィンドウで複数のインスタンスが開きます。)

>ユーザオブジェクトとポップアップウィンドウを対にして独立したオブジェクトと
>して作るなんて言うやり方はやっぱり無理なんでしょうか。

これは、
「あるウィンドウから、他のウィンドウの中にあるコントロールにデータを送りたい」
という意味ですね。であれば、さまざまな方法があると思いますが、
「1つのポップアップウィンドウ」と「同一クラスによる複数インスタンスのタブページ」
との間に限定できるのであれば、以下の方法なんてどうですか?

? ポップアップウィンドウ側の定義と処理:

・UserObject型のインスタンス変数 i_tabpage を宣言しておきます。
 この変数には、常に現在アクティブなタブページへの参照が代入されるようにしておきます。
 (↑これはタブページ側で行なうこと)

・このウィンドウから何らかの情報をタブページに送るには、
 if IsValid(i_tabpage) then i_tabpage.Dynamic uf_関数名(引数) とか
 if IsValid(i_tabpage) then i_tabpage.Dynamic Event ue_イベント名(引数)
 とかやります。

? タブページ側の定義と処理:

・ポップアップウィンドウから呼び出される関数やイベントを整備しておきます。

・自分がアクティブになったことを、ポップアップウィンドウに通知しておきます。
 (このタイミングは、タブページに pbm_showwindow を定義します)
 if show and IsValid(w_popup) then w_popup.i_tabpage = this

このような方法で、特定のウィンドウとタプベージとの間で情報のやりとりが可能です。
あとは、必要な関数やイベントなどをいくつか整備します。


付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows95
DBMS Oracle SQL*Net 2.3
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS Oracle 7.3
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.