タブ付きキャプションウィンドウの動作は、最もモダンな最新のWebブラウザと非常によく似ています。開いている各ウィンドウは、ウィンドウのキャプション内にタブとして表示されます。必要に応じて、ユーザーが新しいタブを開くためのボタンを表示できます。このウィンドウは、各タブでは、任意のタイプのユーザーオブジェクトやウィンドウ オブジェクトを各タブ内で開くことができますが、単一目的のページ(Webブラウザのようなもの)に最適です。
このウィンドウを使用するには、 w_pbus_spa_tab を継承します。このウィンドウはPBメニューをサポートしていませんが、PBメニューを指定することができるので、メニューショートカットを使用できます。
これは必須ではありませんが、通常このタイプのウィンドウでは、ウィンドウが開いたときにユーザーのためにタブを開きたいと思うでしょう。これは、Webブラウザがタブをプリロードしてユーザーの操作を助けるのと似ています。同様に、ユーザーが最後に開いたタブを閉じたときにウィンドウを閉じたい場合もあるでしょう。
サンプル コード:
//Open event of window w_sql lw_sql of_OpenTab(lw_sql, "New Query", "SQL!") //AddTabButtonClicked event //Open a new tab similar to how we automatically opened one in the open event w_sql lw_sql of_OpenTab(lw_sql, "New Query", "SQL!") //TabClosed event //If there are no more tabs opened, we can close the whole window. IF of_GetTabCount() = 0 THEN POST Close(THIS) END IF
ノート:このリリースでは、PowerBuilder メニュー オブジェクトはサポートされていません。将来的には、代替メニューが追加される可能性があります。
既知の問題:ウィンドウを開いたときにウィンドウを最大化して表示したい場合は、以下をウィンドウのOpenイベントの先頭に追加する必要があります。
THIS.WindowState = Maximized!