Window データタイプでは、オブジェクトや外部 URL をポップアップウィンドウで開くことができます。呼び出したページが呼び出し元の画面と同じサーバーにある場合、ポップアップは
モーダルの状態で開かれます。つまり、ユーザーが何らかの方法でポップアップウィンドウを閉じるまで、親のアプリケーションはブロックされます。
Web オブジェクトからポップアップウィンドウを開くには、Window データタイプ変数を定義します。次に、開く対象 (
Web Panel オブジェクト、
Transaction オブジェクト、HTTP プロシージャー) または URL などの情報を指定します。開くよう指示された Web ページが呼び出し元のページと異なるサーバーにある場合を除いて、ポップアップウィンドウがモーダルの状態 (GeneXus の
選択リストと同様) で開きます。異なるサーバーの Web ページを開く場合は、新しいウィンドウが開き、両方 (呼び出し側および呼び出された側) がアクティブになります。また、ポップアップウィンドウのサイズと位置を示すためのいくつかのプロパティを使用できます。
Autoresize |
Height |
Left |
Object |
Position |
Top |
URL |
Width |
Autoresize
ポップアップウィンドウを開くときに Web ページのコンテンツにあわせてウィンドウのサイズを変更するかどうかを示します。設定可能な値は True または False (ブール値) です。
既定値: True
Height
開くポップアップウィンドウの高さを示します。このプロパティは、Autoresize = False の場合のみ考慮されます。
Left
開くポップアップウィンドウの左辺の位置を示します。このプロパティは、Position = 1 (絶対位置) の場合のみ考慮されます。
Object
ポップアップウィンドウで開く Web オブジェクト。対応するオブジェクトタイプは次のとおりです。
- Web Panel
- Web Component (URL Access = Yes)
- Transaction (Type = Component の場合、対応するには URL Access を Yes に設定する必要があります)
- Procedure (Call Protocol = HTTP)
Create コマンド、つまり次の構文を使用してオブジェクトを示します:
- &Window.Object = GeneXusWebObject.Create(params)
- &Window.Object = Create(GeneXusWebObject, params)
Window タイプの変数の [ Object ] プロパティに別のオブジェクトタイプを使用した場合、次のような仕様エラーが表示されます。
- spc0008 Source : Call to program <GeneXusWebObject> that cannot be generated.
- spc0012 Source : Object <GeneXusWebObject> referenced in a create function must be a component.
Position
開くポップアップウィンドウの位置を示します。設定可能な値は 1 (絶対位置) または 0 (中央揃え) です。
既定値: 0 (中央揃え)。
Top
開くポップアップウィンドウの上辺の位置を示します。このプロパティは、Position = 1 (絶対位置) の場合のみ考慮されます。
URL
ポップアップウィンドウで開く URL を示します。任意の文字値を受け入れ、定数、項目属性、変数、または関数の結果を代入することができます。
-
&Window.URL = 'http://www.google.com'
-
&Window.URL = CharAttribute
-
&Window.URL = &CharVariable
-
&Window.URL = link(GeneXusWebObject, params)
Width
開くポップアップウィンドウの幅を示します。このプロパティは、Autoresize = False の場合のみ考慮されます。
Open
指定された Web ページをポップアップウィンドウで開きます。開くよう指示された Web ページが呼び出し元と異なるサーバーにある場合を除いて、ポップアップウィンドウをモーダルの状態で開きます。異なるサーバーにある Web ページを開く場合は、新しいウィンドウが開き、両方 (呼び出し側および呼び出された側) がアクティブになります。
検討事項:
-
1 つのイベントに複数の URL またはオブジェクトのプロパティを割り当てる (URL 2 つ、オブジェクト 2 つ、または URL とオブジェクトを 1 つずつ) と、最後に割り当てたものだけが有効であると見なされます。
次のコードの場合:
Event 'OpenInformation'
&window.Object = AirlineList.Create()
&window.Open()
EndEvent
動作は次のとおりです:
また、次のコードの場合:
Event 'OpenGoogle'
&window.URL = 'http://www.google.com'
&window.Open()
EndEvent
動作は次のとおりです:
開く Web ページが呼び出し元とは異なるサーバーにある場合、ポップアップはモーダルウィンドウでは開きません (呼び出し元のページを継続して使用できます)。実際には、新しいブラウザーインスタンスが作成されます。
オブジェクト: Web Panel、
Transaction、
Web Component、
Procedure
ジェネレーター: Java、
.NET、
.NET Framework、Ruby (GeneXus X Evolution 3 まで)