# 日本語 OpenVMS
日本語画面管理ライブラリ
利用者の手引き

前へ | 次へ | 目次 | 索引

以下の例は，この FORTRAN プログラムによって生成される出力を示しています。

    $ RUN RETURN
    Enter number of lines to save.
      3
    Enter lines of text:
    Example> PASTEBOARD
    Example> DISPLAY
    Example> KEYBOARD
    ****The lines of text are:
    KEYBOARD
    DISPLAY
    PASTEBOARD
    ****The line containing "fox" is:

    None found!

# SMG$RING_BELL

> Ring the Terminal Bell or Buzzer ルーチンは，漢字ターミナルのベルまたはブザーを鳴らします。

## 形式

> SMG$RING_BELL display-id [,number-of-times]

## 戻り値

> ###

> OpenVMS 用法 | cond_value
> データ型 | longword (unsigned)
> アクセス | write only
> 受け渡し方 | by value

## 引数

> ### display-id

> OpenVMS 用法 | identifier
> データ型 | longword (unsigned)
> アクセス | read only
> 受け渡し方 | by reference

> ベルまたはブザーを鳴らす仮想ディスプレイを指定します。 display-id 引数は，ディスプレイ識別子を格納した符号なしロングワードのアドレスです。

> この引数は SMG$CREATE_VIRTUAL_DISPLAY ルーチンによって与えられます。

> ### number-of-times

> OpenVMS 用法 | longword_signed
> データ型 | longword integer (signed)
> アクセス | read only
> 受け渡し方 | by reference

> ベルまたはブザーを鳴らす回数を指定します。 number-of-times 引数は，ベルまたはブザーを鳴らす回数を格納した符号付きロングワード整数のアドレスです。 number-of-times 引数を省略した場合には，値は 1 になります。

## 説明

> SMG$RING_BELL ルーチンは，指定された仮想ディスプレイがペーストされている各ペーストボードでベルまたはブザーを鳴らします。ベルまたはブザーは，指定された回数だけ鳴ります。省略時には 1 回だけ鳴ります。

## 戻される状態値

> SS$_NORMAL | 正常終了。
> SMG$_INVDIS_ID | display-id 引数に誤りがあります。
> その他 | $QIOW，LIB$GET_VM，LIB$FREE_VM から戻される状態値。

# SMG$SAVE_PHYSICAL_SCREEN

> Save Physical Screen ルーチンは，後でSMG$RESTORE_PHYSICAL_SCREENルーチンを呼び出すことにより復元できるように，ペーストボードの内容を保存します。

## 形式

> SMG$SAVE_PHYSICAL_SCREEN pasteboard-id ,display-id [,desired-start-row] [,desired-end-row]

## 戻り値

> ###

> OpenVMS 用法 | cond_value
> データ型 | longword (unsigned)
> アクセス | write only
> 受け渡し方 | by value

## 引数

> ### pasteboard-id

> OpenVMS 用法 | identifier
> データ型 | longword (unsigned)
> アクセス | read only
> 受け渡し方 | by reference

> 内容が保存されるペーストボードを指定します。 pasteboard-id 引数は，ペーストボード識別子を格納した符号なしロングワードのアドレスです。

> ### display-id

> OpenVMS 用法 | identifier
> データ型 | longword (unsigned)
> アクセス | write only
> 受け渡し方 | by reference

> 指定されたペーストボードの内容を格納するために作成された仮想ディスプレイの仮想ディスプレイ識別子を受け付けます。display-id 引数は，仮想ディスプレイ識別子が書き込まれる符号なしロングワードのアドレスです。

> display-id 引数は，保存されている情報を回復するときに SMG$RESTORE_PHYSICAL_SCREENルーチンに渡さなければなりません。

> ### desired-start-row

> OpenVMS 用法 | longword_signed
> データ型 | longword (signed)
> アクセス | read only
> 受け渡し方 | by reference

> 保存する最初の行を指定します。desired-start-row 引数は，行番号を格納した符号付きロングワードのアドレスです。desired-start-row 引数を省略した場合には，ペーストボードの1行目が使用されます。

> ### desired-end-row

> OpenVMS 用法 | longword_signed
> データ型 | longword (signed)
> アクセス | read only
> 受け渡し方 | by reference

> 保存する最後の行を指定します。desired-end-row 引数は，行番号を格納した符号付きロングワードのアドレスです。desired-end-row 引数を省略した場合には，ペーストボードの最後の行が使用されます。

## 説明

> SMG$SAVE_PHYSICAL_SCREENルーチンは，指定されたペーストボードと同じ幅で， desired-start-row 引数と desired-end-row 引数によって指定された高さの仮想ディスプレイを作成することにより，画面を消去します。これらの2つの引数を省略した場合には，作成される仮想ディスプレイの高さは，指定されたペーストボードの高さと同じになります。

> 作成された仮想ディスプレイは省略時の文字集合を持たないので，仮想ディスプレイへの出力表示は，文字集合について考慮しなければなりません。

> 保存される情報，つまり，ペーストボード・イメージは，SMG$RESTORE_PHYSICAL_SCREEN ルーチンを呼び出すことにより復元できます。SMG$SAVE_PHYSICAL_SCREENルーチンと SMG$RESTORE_PHYSICAL_SCREENルーチンを2回以上呼び出す場合には，呼び出しはネスティング方式で実行しなければなりません。つまり，最後に保存したペーストボードは最初に復元しなければなりません。

> これらのルーチンは，日本語SMG機能を使用せずに出力を画面に送信する可能性のあるプロシージャを呼び出すときに便利です。このようなプロシージャを呼び出す場合には，その前にSMG$SAVE_PHYSICAL_SCREENルーチンを使用してペーストボード・イメージを保存します。プロシージャを実行した後，SMG$RESTORE_PHYSICAL_SCREENルーチンを使用してペーストボード・イメージを復元します。

> 保存する領域は少なくとも2行以上でなければなりません。スクロール領域をサポートしないターミナルでSMG$SAVE_PHYSICAL_SCREENルーチンを使用する場合には，ペーストボード全体を保存し，復元しなければなりません。

## 戻される状態値

> SS$_NORMAL | 正常終了。
> LIB$_INSVIRMEM | 仮想メモリが不足しています。
> SMG$_INVPAS_ID | pasteboard-id 引数に誤りがあります。
> SMG$_INVROW | 指定された行番号が誤っているか，または指定された範囲が1行以下です。
> SMG$_WRONUMARG | 引数の数が誤っています。

# SMG$SAVE_VIRTUAL_DISPLAY

> Save the Virtual Display to a File ルーチンは，仮想ディスプレイの内容をファイルに格納します。

## 形式

> SMG$SAVE_VIRTUAL_DISPLAY display-id [,filespec]

## 戻り値

> ###

> OpenVMS 用法 | cond_value
> データ型 | longword (unsigned)
> アクセス | write only
> 受け渡し方 | by value

## 引数

> ### display-id

> OpenVMS 用法 | identifier
> データ型 | longword (unsigned)
> アクセス | read only
> 受け渡し方 | by reference

> 保存する仮想ディスプレイを指定します。display-id 引数は，仮想ディスプレイ識別子を格納した符号なしロングワードのアドレスです。

> この引数はSMG$CREATE_VIRTUAL_DISPLAYルーチンによって与えられます。

> ### filespec

> OpenVMS 用法 | char_string
> データ型 | character string
> アクセス | read only
> 受け渡し方 | by descriptor

> 指定された仮想ディスプレイを保存するファイルのファイル指定を格納した文字列。 filespec 引数は，ファイル指定を格納した文字列を指すディスクリプタのアドレスです。

> このルーチンを呼び出すたびに，新しいファイルが作成されます。 filespec 引数を省略した場合のファイル指定はSMGDISPLY.DATです。

## 説明

> SMG$SAVE_VIRTUAL_DISPLAYルーチンは仮想ディスプレイの内容を保存し，それを印字不可能なファイルに格納します。仮想ディスプレイを再作成するのに必要なテキスト，ビデオ属性，文字集合，およびすべてのディスプレイ属性は保存されます。メニュー，ビューポート，およびサブプロセスの内容は保存されません。仮想ディスプレイを復元するには，SMG$LOAD_VIRTUAL_DISPLAYルーチンを使用します。

## 戻される状態値

> SS$_NORMAL | 正常終了。
> SMG$_INVDIS_ID | display-id 引数に誤りがあります。
> RMS$_xxxx | $OPEN，$CONNECT，$PUT，および $CLOSEから戻されたエラー。

# SMG$SCROLL_DISPLAY_AREA

> Scroll Display Area ルーチンは，仮想ディスプレイの長方形領域をスクロールします。

## 形式

> SMG$SCROLL_DISPLAY_AREA display-id [,start-row] [,start-column] [,height] [,width] [,direction] [,count]

## 戻り値

> ###

> OpenVMS 用法 | cond_value
> データ型 | longword (unsigned)
> アクセス | write only
> 受け渡し方 | by value

## 引数

> ### display-id

> OpenVMS 用法 | identifier
> データ型 | longword (unsigned)
> アクセス | read only
> 受け渡し方 | by reference

> スクロールが実行される仮想ディスプレイを指定します。display-id 引数は，仮想ディスプレイ識別子を格納した符号なしロングワードのアドレスです。

> この引数はSMG$CREATE_VIRTUAL_DISPLAYルーチンによって与えられます。

> ### start-row

> OpenVMS 用法 | longword_signed
> データ型 | longword (signed)
> アクセス | read only
> 受け渡し方 | by reference

> スクロール領域の1行目を指定します。start-row 引数は，開始行の行番号を格納した符号付きロングワードのアドレスです。

> start-row 引数を省略した場合には，指定した仮想ディスプレイの1行目が使用されます。start-row 引数または start-column 引数を省略した場合には，省略時の設定(行1とカラム1)が使用されます。

> ### start-column

> OpenVMS 用法 | longword_signed
> データ型 | longword (signed)
> アクセス | read only
> 受け渡し方 | by reference

> スクロール領域の最初のカラムを指定します。 start-column 引数は，開始カラムを格納した符号付きロングワードのアドレスです。

> この引数を省略した場合には，指定した仮想ディスプレイのカラム1が使用されます。 start-row 引数または start-column 引数を省略した場合には，省略時の値として行1とカラム1が使用されます。start-column 引数が全角文字の右半分から始まった場合，その文字は2つの未定義文字になります。

> ### height

> OpenVMS 用法 | longword_signed
> データ型 | longword (signed)
> アクセス | read only
> 受け渡し方 | by reference

> スクロール領域の行数を指定します。height 引数は，行数を格納した符号付きロングワードのアドレスです。

> この引数を省略した場合には，省略時の値として仮想スクロール領域の高さ (SMG$SET_DISPLAY_SCROLL_REGIONルーチンによって設定されている場合)，または指定 された仮想ディスプレイの高さが使用されます。

> ### width

> OpenVMS 用法 | longword_signed
> データ型 | longword (signed)
> アクセス | read only
> 受け渡し方 | by reference

> スクロール領域のカラム数を指定します。width 引数は，カラム数を格納した符号付きロングワードのアドレスです。

> この引数を省略した場合には，省略時の値として，指定した仮想ディスプレイの幅が使用されます。

> ### direction

> OpenVMS 用法 | mask_longword
> データ型 | longword (unsigned)
> アクセス | read only
> 受け渡し方 | by reference

> スクロールの方向を指定します。direction 引数は，方向コードを格納したロングワード・ビット・マスクのアドレスです。

> 指定できる値はSMG$M_UP，SMG$M_DOWN，SMG$M_RIGHT，およびSMG$M_LEFTです。省略時の設定はSMG$M_UPです。

> ### count

> OpenVMS 用法 | longword_signed
> データ型 | longword (signed)
> アクセス | read only
> 受け渡し方 | by reference

> スクロールする行数またはカラム数を指定します。count 引数は，スクロールの量(行数またはカラム数)を格納した符号付きロングワードのアドレスです。この引数を省略した場合には，1行または1カラムがスクロールされます。

## 説明

> SMG$SCROLL_DISPLAY_AREAルーチンは，指定された仮想ディスプレイの長方形領域をスクロールします。このルーチンは指定された行数または指定されたカラム数だけ，指定された方向に領域をスクロールします。スクロールの後，カーソルは start-row 引数，start-column 引数の位置に設定されます。

> DEC漢字または Super DEC 漢字文字集合が指定され，start-column 引数が全角文字の右半分から始まる場合は，全角文字は 2 つの未定義文字になります。
> 長方形領域の右端のカラムが，全角文字の左半分を含む場合には，全角文字は2つの未定義文字になります。

> また，長方形領域が左方向にスクロールし，左端のカラムが全角文字の右半分を含んでいる場合は，全角文字の右半分は未定義文字になります。
> 長方形領域が右方向にスクロールし，右端のカラムが全角文字の左半分を含んでいる場合は，全角文字の左半分は未定義文字になります。

## 戻される状態値

> SS$_NORMAL | 正常終了。
> SMG$_INVARG | 定義された長方形は仮想ディスプレイの外部です。
> SMG$_INVCOL | カラムが誤っています。
> SMG$_INVDIS_ID | display-id 引数に誤りがあります。
> SMG$_INVROW | 行が誤っています。
> SMG$_WRONUMARG | 引数の数が誤っています。

前へ | 次へ | 目次 | 索引