Window Open & Close Registry
Window画面の配置を閉じた時に座標位置を覚えてOpen時に呼出しセットする方法。Registryを使って、業務別(業務アプリケーション)、プログラムID毎にRegistryへ座標位置(x、y)を保存呼出しして以前に作業したWindow画面の配置から開始できます。
<使い方>
String XWin,YWin //レジストリ 開始終了位置確保
//-----------------------------------------------------
// OPEN処理レジストリ設定(Window画面位置の読込み)
// String XWin,YWin グローバル変数へ設定
//-----------------------------------------------------
Integer I
I = (RegistryGet( &
HKEY_CURRENT_USER\SOFTWARE\業務名ID\プログラムID","X", XWin ))
IF I < 0 Then
// MessageBox("-->","X:レジストリ取得ERROR!!")
END IF
I = (RegistryGet( &
"HKEY_CURRENT_USER\SOFTWARE\業務名ID\プログラムID","Y", YWin ))
IF I < 0 Then
// MessageBox("-->","Y:レジストリ取得ERROR!!")
END IF
This.X = Integer(XWin)
This.Y = Integer(YWin)
次は、Closeの時座標位置をレジストリへ保存します。
//------------------------------------------------------
// CLOSE処理レジストリ設定(書込み)
//------------------------------------------------------
String W_XWin, W_YWin
W_XWin = String(This.X)
W_YWin = String(This.Y)
RegistrySet( &
"HKEY_CURRENT_USER\SOFTWARE\業務名ID\プログラムID", "X", W_XWin )
RegistrySet( &
"HKEY_CURRENT_USER\SOFTWARE\業務名ID\プログラムID", "Y", W_YWin )
これをOpenとCloseへ各Windowへセットします。書込み確認は「regedit.exe」で確認する事ができます。
◎PTW(PowerBuilder TotalWorksystem)で自動生成されたプログラムは自動的に作成されます。
※グローバル変数 レジストリ基準パスを先に設定しておく方法も有ります。
RegPathへ各WindowのOPENへ「プログラムID」を付けて設定します。
<例>
・グローバル変数へ
string RegPath = "HKEY_CURRENT_USER\SOFTWARE\PTW\業務名ID\"
・各WindowのOPENへ
RegistryGet( RegPath + ClassName(), "X", XWin )
RegistryGet( RegPath + ClassName(), "Y", YWin )
This.X = Integer(XWin)
This.Y = Integer(YWin)