PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
6824 | 99/06/16 15:58:54 | RE(7):Win32API(FindWindow)について(おまけレスのおまけ) By Taka |
6819 | 99/06/16 15:20:38 | RE(6):Win32API(FindWindow)について(おまけレス) By O.Takagi |
6737 | 99/06/14 14:10:49 | RE(5):Win32API(FindWindow)について(おまけレス) By M.M |
6731 | 99/06/14 11:17:17 | RE(4):PB5.0.04: 5.0.02から04にバージョンアップしたらAPI(FindWIndow)が変になりました。 By O.Takagi |
6729 | 99/06/14 11:12:27 | RE(3):PB5.0.04: 5.0.02から04にバージョンアップしたらAPI(FindWIndow)が変になりました。 By Taka |
6727 | 99/06/14 10:49:12 | RE(2):PB5.0.04: 5.0.02から04にバージョンアップしたらAPI(FindWIndow)が変になりました。 By O.Takagi |
6712 | 99/06/11 16:42:36 | RE(1):PB5.0.04: 5.0.02から04にバージョンアップしたらAPI(FindWIndow)が変になりました。 By M.M |
6710 | 99/06/11 16:25:22 | PB5.0.04: 5.0.02から04にバージョンアップしたらAPI(FindWIndow)が変になりました。 By O.Takagi |
カテゴリ:スクリプトの記述
日付:1999年06月16日 15:58 発信者:Taka
題名:RE(7):Win32API(FindWindow)について(おまけレスのおまけ)
O.Takagiさん、こんにちは。
>下のようにした場合、ウィンドウクラスがPBバージョンアップと共に変わってもソースをいじる必要がないんです
ね。
>でも、すこしレスポンスが悪いような気がします。気のせいかもしれませんが、上の方が若干早いような。
FindWindow関数でクラス名を与えない場合、OS配下でインスタンス化されているすべてのウィンドウを
探しに行くので、若干遅くなる場合があります。
これを回避したいのであれば、GetClassName関数でクラス名を取得してからFindWindowすると良いです。
外部関数宣言
function long GetClassName( long hdl, ref string cls, long byt ) &
library \'user32.dll\' alias for \'GetClassNameA\'
使い方
string cls
cls = Space(100)
GetClassName( Handle(parentまたはthisなど), cls, 100 )
これで、cls にクラス名が格納されます。(失敗した場合は戻り値=0)
でも、余計なオーバーヘッドがかかってパフォーマンスはあまり変わらなかったりして...
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows95
DBMS (記載なし)
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.