PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
4359 98/12/11 20:34:17 RE(7):ウィンドウのOpenイベントについて By M.M
4358 98/12/11 19:39:01 RE(6):ウィンドウのOpenイベントについて By てとらぽっと
4357 98/12/11 18:54:47 RE(5):ウィンドウのOpenイベントについて By M.M
4354 98/12/11 17:22:51 RE(4):PB6: ループ処理について教えてください。 By たこちゃん
4353 98/12/11 16:32:15 RE(3):こんな方法もあります By Taka
4351 98/12/11 15:45:19 RE(2):PB6: ループ処理について教えてください。 By てとらぽっと
4348 98/12/11 14:33:38 RE(1):PB6: ループ処理について教えてください。 By こてちゅ
4344 98/12/11 13:16:55 PB6: ループ処理について教えてください。 By たこちゃん

カテゴリ:スクリプトの記述
日付:1998年12月11日 19:39 発信者:てとらぽっと
題名:RE(6):ウィンドウのOpenイベントについて

たこちゃんさん、M.Mさん、こんばんは。

>>ウィンドウの OPENイベント でこの処理をさせました。
>>その時に、
>>
>>cnt = UpperBound( ウインドウ名.Control[] )
>>
>>とすると、cnt には Null が入ってしまいます。
>>これは何故ですか?

>確かめていないので推測モードの発言ですが、ウィンドウのOPENイベントはウィンドウが開く前に
>実行されたと記憶しています。
>つまり、OPENイベントの時点ではコントロールが生成されていないハズです。
>それで、UpperBound関数でウィンドウ内のコントロールを数えてもNullになるのではと思います。
>(ハズしていたらすみません)

ええ?と、Openイベントでもコントロールは既に作られているので、
インスタンスの参照 ウインドウ名.Control[] がおかしいのだと思います。
自分自身のプロパティを参照するには This.Control[](Thisは略せます)で
いいんじゃないでしょうか。

>ウィンドウのOPENイベントで、何かユーザイベントをPostし、そのイベント内で上記の処理を
>実行してみてはどうでしょうか。

そうですね。今回のエラーの理由に依らず、
Openイベントであれこれ書くと画面が開くまでに時間がかかりますので、
Postしたユーザイベントで処理されることをお勧めします。


>それと、”最大公約数のプロパティしか持たないPowerObject” というのは
>どういう事ですか?

すみません、PowerObjectはどんなオブジェクトにも存在するメソッド、
つまり TypeOf() や ClassName() などしか持っていないので、Textプロパティは
ないということです。TypeOf()で型を調べたらその型に代入してやらないと
すべてのプロパティにアクセスできません。

うん、相変わらず横着な説明だったな。(^^;


付加情報:

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.