QuickWin 関数:指定した装置番号のウィンドウにフォーカスを設定します。
モジュール:USE DFLIB
形式
result = FOCUSQQ (iunit)
unit
(入力) INTEGER(4)。フォーカスを設定するウィンドウの装置番号。装置番号 0,5,および 6 は基本開始ウィンドウとして参照されます。
結果
結果の型は INTEGER(4) です。成功すれば 0 が返され,そうでなければ非ゼロが返されます。
プログラムが装置番号 0,5,および 6 を指定して開かなければ,装置番号 0,5,および 6 は基本ウィンドウとして参照されます。これらの装置が開かれ,ウィンドウに接続されていれば,それらは一度閉じられた後,自動的にコンソールに再接続されます。
SETACTIVEQQ とは異なり,FOCUSQQ は指定した装置を前面に持ってきます。フォーカスのあるウィンドウが活動状態のウィンドウ (グラフィックス出力を受け取るウィンドウ) である必要がないことに注意してください。SETACTIVEQQ を呼び出すと,フォーカスを得ることなくウィンドウを活動状態にすることができます。
ウィンドウが IOFOCUS=.FALSE. で開かれたとしても,ウィンドウが FOCUSQQ でフォーカスを与えられた時,ウィンドウがマウス・クリックで選択された時,または,グラフィックス操作ではなく I/O 操作がそのウィンドウで行われた時,ウィンドウはフォーカスを持ちます。IOFOCUS 指定子は,その装置で I/O 文が実行された時にウィンドウがフォーカスを受け取るかどうかを決定します。たとえば,以下のようになります。
OPEN (UNIT = 10, FILE = 'USER', IOFOCUS = .TRUE.)
基本設定 IOFOCUS=.TRUE. では,装置 * として開かれた子ウィンドウを仮定しています。IOFOCUS=.TRUE. の場合,子ウィンドウは各 READ,WRITE,PRINT,または OUTTEXT より先にフォーカスを受け取ります。グラフィックス関数 (たとえば,OUTGTEXT や ARC) の呼び出しは,フォーカスの移動を引き起こしません。
互換性
QUICKWIN GRAPHICS LIB
関連情報