PF-Get-Next-Panel (値 16)

最前面のパネルが削除された場合に、次に最前面となるパネルの識別ハンドルおよび情報を返します。

パラメーター:

Panel-Name-Buffer 次を含むグループ項目:
Panel-Name-Length     pic 99 comp-x.
Panel-Name-Text       pic x(30).
PPB-First-Visible-Col pic 9(4) comp-x
PPB-First-Visible-Row pic 9(4) comp-x
PPB-Panel-Height pic 9(4) comp-x
PPB-Panel-ID pic 9(4) comp-x
PPB-Panel-Start-Column pic 9(4) comp-x
PPB-Panel-Start-Row pic 9(4) comp-x
PPB-Panel-Width pic 9(4) comp-x
PPB-Visible-Height pic 9(4) comp-x
PPB-Visible-Width pic 9(4) comp-x

入力パラメーター:

なし

出力パラメーター:

Panel-Name-Length パネルに関連付けられた名前の長さ。
Panel-Name-Text PF-Set-Panel-Name 呼び出しでパネルに関連付けられた名前。
PPB-First-Visible-Col パネル上に表示するウィンドウの水平位置。
PPB-First-Visible-Row パネル上に表示するウィンドウの垂直位置。
PPB-Panel-Height パネルの高さ。
PPB-Panel-ID 最後に使用可能になったパネルの識別ハンドル。
PPB-Panel-Start-Column 画面上のパネルの水平位置。
PPB-Panel-Start-Row 画面上のパネルの垂直位置。
PPB-Panel-Width パネルの幅。
PPB-Visible-Height パネルに表示するウィンドウの高さ。
PPB-Visible-Width パネルに表示するウィンドウの幅。

説明:

この機能の終了時、Panel-Name-Length の MSB は、パネルが現在使用可能になっているかを示すフラグです。0 はパネルが使用不能で、0 以外はパネルが使用可能です。これは、Panel-Name-Length > 127 で確認します。

PF-Get-Next-Panel の直前に使用できる Panels の呼び出しは、PF-Get-First-Panel および他の PF-Get-Next-Panel のみです。つまり、PF-Get-Next-Panel の 2 つの連続した呼び出しの間、または、PF-Get-First-Panel と PF-Get-Next-Panel の間に、他の Panels 呼び出しがあってはならないということです。

PF-Get-Next-Panel を呼び出した際に次のパネルがなかった場合は、PPB-Status に値 Error-Invalid-ID が格納されます。

例:

この例は、Panels で認識されているすべてのパネルの詳細を返します。情報を保持するためにプログラムの作業場所節に表、および、添え字として使用するデータ項目 panel-num を宣言していると仮定しています。

*
* Get details of the first panel
*
       move 1 to panel-num
       move pf-get-first-panel to ppb-function
       perform make-panels-call
       if ppb-status not = error-invalid-id
*      (code to abort)
       perform move-values-to-working-storage
       add 1 to panel-num
*
* Get details of all other panels, until ppb-status is
* returned as error-invalid-id.
*
       move pf-get-next-panel to ppb-function
       call "PANELS" using panels-parameter-block
                              panel-name-buffer
       perform until ppb-status = error-invalid-id
       perform move-values-to-working-storage
       add 1 to panel-num
       perform make-panels-call
       end-perform
         ...
 move-values-to-working-storage section.
*
* Move all the exit parameters to the Working-Storage section
* to retain their values.
*
       move ppb-panel-id       to ws-panel-id (panel-num)
       move ppb-panel-height   to ws-panel-height (panel-num)
       move ppb-panel-width    to ws-panel-width (panel-num)
       move ppb-visible-height 
                        to ws-visible-height (panel-num)
       move ppb-visible-width 
                        to ws-visible-width (panel-num)
       move ppb-panel-start-column 
                        to ws-panel-start-column (panel-num)
       move ppb-panel-start-row 
                        to ws-panel-start-row (panel-num)
       move ppb-first-visible-col 
                        to ws-first-visible-col (panel-num)
       move ppb-first-visible-row 
                        to ws-first-visible-row (panel-mum)
       move panel-name-buffer  
                        to ws-panel-name-buffer (panel-num)
       move panel-name-length  
                        to ws-panel-name-length (panel-num)
       move panel-name-text    
                        to ws-panel-name-text (panel-num)
       .
 make-panels-call section.
       call "PANELS" using panels-parameter-block
                           panel-name-buffer