PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
6524 99/05/31 17:24:36 RE(10):PB5.0.03: 親ウィンドウの親ウィンドウ By rock
6516 99/05/28 22:19:52 RE(9):PB5.0.03: 親ウィンドウの親ウィンドウ By M.M
6512 99/05/28 19:28:31 RE(8):PB5.0.03: 親ウィンドウの親ウィンドウ By Taka
6511 99/05/28 19:23:58 RE(7):PB5.0.03: 親ウィンドウの親ウィンドウ By Mika★
6502 99/05/28 15:48:03 RE(6):PB5.0.03: 親ウィンドウの親ウィンドウ By rock
6496 99/05/28 14:55:16 RE(5):PB5.0.03: 親ウィンドウの親ウィンドウ By M.M
6494 99/05/28 14:24:34 RE(4):PB5.0.03: 親ウィンドウの親ウィンドウ By rock
6490 99/05/28 13:59:03 RE(3):PB5.0.03: 親ウィンドウの親ウィンドウ By こてちゅ
6484 99/05/28 11:28:49 RE(2):PB5.0.03: 親ウィンドウの親ウィンドウ By rock
6479 99/05/27 15:09:23 RE(1):PB5.0.03: 親ウィンドウの親ウィンドウ By てとらぽっと
6477 99/05/27 14:25:34 PB5.0.03: 親ウィンドウの親ウィンドウ By rock

カテゴリ:PowerBuilderの開発環境
日付:1999年05月28日 19:23 発信者:Mika★
題名:RE(7):PB5.0.03: 親ウィンドウの親ウィンドウ

rockさん、こんばんは。

たまたま、似たようなアプリを作っているところので、試してみました。
(メインウィンドウからレスポンスウィンドウを開き、さらにそこからレスポンスウィンドウを開く。)
ただし、PB5環境がもうなく、PB6なので、参考にはならないかもしれません。
スクリプトは、2つ目のレスポンスウィンドウのOpenイベントに書いてみました。

まず、いちばん最初にrockさんが示されていた

  String ls_ClassName

  ls_ClassName = This.ParentWindow().ParentWindow().ClassName()

は、問題なく動作しました。


次に、こてちゅさんが示されていたのをちょっと変えて

  PowerObject w_Par1, w_Par2

  w_Par1 = This.GetParent()
  w_Par2 = w_Par1.GetParent() ・・・※

とすると、w_Par1に値が入ってきていないらしく
※ の行で「Nullオブジェクトの参照」で落ちました。


で、次は、最初にrockさんが示されていた方法に2クッション置いただけのものですが

  String ls_ClassName
  Window w_Par1, w_Par2

  w_Par1 = This.ParentWindow()
  w_Par2 = w_Par1.ParentWindow()
  ls_ClassName = w_Par2.ClassName()

これは、きちんと動作しました。

上記で使用したウィンドウは、2?3代継承しているものなので
てとらぽっとさんへの返答に書かれているような、継承しているからダメ、ということはないと思います。

また、OpenWithParm()関数は、レスポンスウィンドウを開くときなら
引数は2つでいいはずです。(Helpをご覧ください。)

3番目の、2クッション置いたやり方でやってみると
どこでひっかかっているのか、わかるのでは?
#わたしも、欲張って(?)1行で書いて、デバッグの時に、どれが原因かわからないので
#結局分けて書く、ということがしょっちゅうあります。(^-^ゞ

付加情報:

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.