PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
3588 98/10/12 17:17:21 RE(2):こんな方法もあります! By Taka
3582 98/10/12 09:50:52 RE(1):PB5.0.04: ディスプレイの解像度が変わってもウィンドウを中央に表示する方法 By こてちゅ
3581 98/10/12 09:22:34 PB5.0.04: ディスプレイの解像度が変わってもウィンドウを中央に表示する方法 By まつおか

カテゴリ:データウィンドウ
日付:1998年10月12日 17:17 発信者:Taka
題名:RE(2):こんな方法もあります!

まつおかさん、こてちゅさん、こんにちは。

こてちゅさんのとほどんど同じですが、私は次の方法でやっています。

/*** wf_MoveCenter() ***/

// 環境変数の取得
Environment SysEnv
If GetEnvironment( SysEnv ) = -1 Then Return

// 変数
Integer win_x, win_y, scr_w, scr_h

// スクリーンサイズをPowerBuilder単位系に変換
scr_w = PixelsToUnits( SysEnv.ScreenWidth , XPixelsToUnits! )
scr_h = PixelsToUnits( SysEnv.ScreenHeight, YPixelsToUnits! )

// サイズチェック
If This.Width > scr_w or This.Height > scr_h Then
MessageBox( \"警告\", \"このウィンドウはスクリーンより大きなサイズで定義されています。\", 
Exclamation! )
End If

// 移動座標の算出
win_x = Max( 1, ( scr_w - This.Width  ) / 2 )
win_y = Max( 1, ( scr_h - This.Height ) / 2 )

// 移動
This.Move( win_x, win_y )

安全を見て、ウィンドウの左上部分がスクリーンから隠れてしまうのを防いでいる点が
違いますね。

付加情報:

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.