PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
12332 00/07/21 18:05:18 RE(9):PB6: 親子画面間のデータの受け渡し方法(一応解決) By t.y
12322 00/07/21 15:21:24 RE(8):PB6: 親子画面間のデータの受け渡し方法(一応解決) By てとらぽっと
12321 00/07/21 15:20:38 RE(7):PB6: 親子画面間のデータの受け渡し方法(一応解決) By てとらぽっと
12315 00/07/21 11:25:50 RE(6):PB6: 親子画面間のデータの受け渡し方法(一応解決) By t.y
12313 00/07/20 16:41:36 RE(5):PB6: 親子画面間のデータの受け渡し方法 By M.M
12312 00/07/20 16:47:15 RE(4):PB6: 親子画面間のデータの受け渡し方法 By M.M
12308 00/07/20 10:02:46 RE(3):PB6: 親子画面間のデータの受け渡し方法 By t.y
12293 00/07/19 11:40:11 RE(2):PB6: 親子画面間のデータの受け渡し方法 By てとらぽっと
12292 00/07/19 11:18:07 RE(1):PB6: 親子画面間のデータの受け渡し方法 By Mika★
12291 00/07/19 10:48:45 PB6: 親子画面間のデータの受け渡し方法 By t.y

カテゴリ:スクリプトの記述
日付:2000年07月21日 15:20 発信者:てとらぽっと
題名:RE(7):PB6: 親子画面間のデータの受け渡し方法(一応解決)

t.yさん、こんにちは。

>なんとか親画面名を子画面に書かない様に...と頑張ったのですが
>親画面の関数を呼ばないといけない処理が発生してしまい万事休す。
>断腸の思いで今回は親画面名の修飾を使うことにしました。
>本当はすごくイヤなんですが...親画面の関数をイベントにすれば
>ParentWindow()がおそらく使えると思うのですが、そこまでして
>やらないといかんかなぁ...という気もしてきまして...

理想と、時間の制約とがシーソーゲーム(笑)して、
どこで止めるのか判断するのが大事ですよね。


さて、少し誤解を解いておきましょう。

イベントにしたからといって、単純にParentWindow()で済む訳ではありません。
TriggerEvent関数/PostEvent関数にイベント名を文字列で扱うことを考えてらっしゃいます?
実際にはこれらの関数では、引数にも戻り値にもオブジェクトを扱うことはできません。

オブジェクトやユーザの思い通りの引数/戻り値を持つイベントを呼ぶときは、
関数と同じように記述します。

 ObjectName.Function 関数名()
 ObjectName.Event イベント名()

ですから window型では、ユーザイベントもコンパイルエラーになります。


>「子画面で親画面名をかかずに親画面のオブジェクトをアクセスする」
>方法について他にも情報がありましたら、ぜひ御教授下さい。

少なすぎたヒントを加えます。 (^^;ゞ
「Dynamic」キーワードです。
ヘルプで「関数とイベントの呼び出し構文」を読み直してください。
(ここには、すっごく大事なこと書いてありますけど、
 あんまりにも初歩的なタイトルなので
 VBなどのツールに慣れた人ほど読んでないような気もしますね。 笑
 読んでても初心の頃だし、理解せぬまま忘れてるかも。 笑)


Dynamicを使うと、コンパイルチェックがかかりませんので、
ユーザイベント/関数をwindow型などでも呼び出せます。


付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows95
DBMS INFORMIX Net 7
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS INFORMIX-OnLine 7
WebServer (記載なし)

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