技術情報(よくあるご質問と回答)
ご質問
モーダルウィンドウを表示した状態でパネル切換えを実施する方法を教えてください。
回答
GENWARE3 では、モーダルウィンドウ表示中のパネル切換えは原則禁止としております。
代替案と致しましては、表示中にパネル切換えが可能なモーダレスウィンドウを使用する方法がございます。
モーダレスウィンドウ表示中に、パネル/他のモーダレスウィンドウを入力禁止とすることで、モーダルウィンドウが表示されているかのようなふるまいにします。この状態でパネル切換えを行ってください。
以下にパネルを入力不可/許可するサンプルコードを示します。
■モーダレスウィンドウを開く場合
モーダレスウィンドウ処理内(OnCreate()など)でパネルのマウス入力を下記コードで不許可にします。
GCPanel* pPanel;
pPanel = GCWGetScreen()->GetPanel();
pPanel->SetEnableStatus(G_FALSE);
他に開いてるモーダレスウィンドウがある場合は、他モーダレスウィンドウに対しても
SetEnableStatus(G_FALSE)を行う必要があります。
■モーダレスウィンドウを閉じる場合
モーダレスウィンドウ処理内(PreDelete()など)でパネルのマウス入力を下記コードで許可にします。
GCPanel* pPanel;
pPanel = GCWGetScreen()->GetPanel();
pPanel->SetEnableStatus(G_TRUE);
※他に開いてるモーダレスウィンドウがある場合は、入力許可するモーダレスウィンドウに対してのみ
SetEnableStatus(G_ TRUE)を行う必要があります。
対象製品バージョン:Ver.2.85.001
管理番号:FG_G10227
資料更新日: 2020年12月26日
※この資料は、資料更新日現在のものです。