PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
13146 00/09/07 14:19:27 RE(2):PB7.0: 継承元のObject名を取得したいのですが By 1214
13132 00/09/07 01:01:43 RE(1):PB7.0: 継承元のObject名を取得したいのですが By Taka
13128 00/09/06 18:11:54 PB7.0: 継承元のObject名を取得したいのですが By 1214

カテゴリ:継承関係
日付:2000年09月07日 01:01 発信者:Taka
題名:RE(1):PB7.0: 継承元のObject名を取得したいのですが

1214さん、おはようございます。

>継承元のObject名を取得したいのですが何か良い方法は無いでしょうか?

ClassDefineオブジェクトを駆使すれば出来ると思います。

例)
// dw_1の継承元クラス名を追いかける
ClassDefinition xxx
xxx = dw_1.ClassDefinition
do
 xxx = xxx.Ancestor
 MessageBox(\"\",xxx.Name)
loop until( xxx.Name = \"powerobject\" )

これを応用すれば、コントロール(a) が クラス(b) の子孫かどうかを、実行時に調べることができます。


それとは別にですね、

>下記のようなことをしたいと思っています。
>1.データの更新ボタンを先祖UserObjectとして作成する。(cb_Update)
>2.WindowのCloseQueryイベントで、Window上にcb_updateを継承している
> コマンドボタンがあれば、ClickedイベントをCallしてからCloseする。

これをやりたいだけなら、もっと簡単な方法があるのではないでしょうか?
例えば、Tagプロパティに特定のキーワードを付けておいて、ウィンドウ内の全コントロールの
Tagを見ていけば目的は達成できると思います。

個人的には、ウィンドウのCloseQueryからボタンのイベントを呼ぶ作り方よりも、
保存のような機能単位はウィンドウに持たせておいて、ボタンが押された時 or CloseQuery から
その保存関数を呼び出すような作り方が好みです。
(もちろん、メニューや他のオブジェクトから呼び出すこともできます)

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows98
DBMS (記載なし)
Browser (記載なし)

Server SoftWare

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

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