日本-日本語 |
|
|
|
OpenVMS マニュアル |
|
日本語 OpenVMS
|
目次 | 索引 |
SMG$DELETE_CHARS |
Delete Characters ルーチンは仮想ディスプレイのカラムを削除します。
SMG$DELETE_CHARS display-id ,number-of-columns ,start-row ,start-column
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-columns
OpenVMS 用法 longword_signed データ型 longword (signed) アクセス read only 受け渡し方 by reference
削除カラム数。 number-of-columns 引数は,削除するカラム数を格納した符号付きロングワードのアドレスです。start-row
OpenVMS 用法 longword_signed データ型 longword (signed) アクセス read only 受け渡し方 by reference
削除開始行。 start-row 引数は,削除操作を開始する行の位置を格納した符号付きロングワードのアドレスです。start-column
OpenVMS 用法 longword_signed データ型 longword (signed) アクセス read only 受け渡し方 by reference
削除開始カラム。 start-column 引数は,削除操作を開始するカラムの位置を格納した符号付きロングワードのアドレスです。start-column 引数が全角文字の右半分である場合は,その文字の左半分は未定義文字になります。
SMG$DELETE_CHARS ルーチンは,指定された行/カラム位置から,指定されたカラム数だけ削除します。この行の残りのカラムは左に移動し,削除された部分を埋めます。単一行中のカラムだけを削除します。削除できるカラム数より多くのカラム数を指定した場合,SMG$DELETE_CHARS ルーチンは指定されたカラムから行の最後までのカラムを削除します。
DEC漢字または Super DEC 漢字文字集合を使用している際に,全角文字の右半分から削除操作が始まる場合は,その文字の左半分は未定義文字になります。また,全角文字の左半分で削除操作が終了する場合は,その文字の右半分は未定義文字になります。
このルーチンを終了した後に,仮想カーソルは削除された最初のカラム位置に移動します。
SS$_NORMAL 正常終了。 SMG$_INVARG 引数が誤っています。指定されたカラム数が仮想ディスプレイの幅をこえます。 SMG$_INVCOL カラム位置が誤っています。指定されたカラムは仮想ディスプレイの内部に含まれません。 SMG$_INVDIS_ID display-id 引数が誤っています。 SMG$_INVROW 行の位置が誤っています。指定された行は仮想ディスプレイの内部に含まれていません。 SMG$_WILUSERMS ペーストボードがビデオ・ターミナルでありません。 SMG$_WRONUMARG 引数の数が誤っています。
#1 |
---|
C+ C This FORTRAN example program demonstrates the use of C SMG$DELETE_CHARS. C- INTEGER SMG$CREATE_VIRTUAL_DISPLAY, SMG$CREATE_PASTEBOARD INTEGER SMG$PASTE_VIRTUAL_DISPLAY, SMG$PUT_CHARS INTEGER SMG$DELETE_CHARS, DISPLAY1, PASTE1 INTEGER ROWS, COLUMNS, BORDER, STATUS C+ C Create the virtual display be calling SMG$CREATE_VIRTUAL_DISPLAY. C To give it a border, set BORDER = 1. No border would be BORDER = 0. C- ROWS = 7 COLUMNS = 50 BORDER = 1 STATUS = SMG$CREATE_VIRTUAL_DISPLAY 1 (ROWS, COLUMNS, DISPLAY1, BORDER) IF (.NOT. STATUS) CALL LIB$SIGNAL(%VAL(STATUS)) C+ C Call SMG$CREATE_PASTEBOARD to create the pasteboard. C- STATUS = SMG$CREATE_PASTEBOARD (PASTE1) IF (.NOT. STATUS) CALL LIB$SIGNAL(%VAL(STATUS)) C+ C Use SMG$PUT_CHARS to put data in the virtual display. C- STATUS = SMG$PUT_CHARS ( DISPLAY1, 1 ' This virtual display has 7 rows and 50 columns.', 2, 1) IF (.NOT. STATUS) CALL LIB$SIGNAL(%VAL(STATUS)) STATUS = SMG$PUT_CHARS ( DISPLAY1, 1 ' This is a bordered virtual display.', 4, 1) IF (.NOT. STATUS) CALL LIB$SIGNAL(%VAL(STATUS)) STATUS = SMG$PUT_CHARS ( DISPLAY1, 1 ' SMG$PUT_CHARS puts data in this virtual display.',6, 1) IF (.NOT. STATUS) CALL LIB$SIGNAL(%VAL(STATUS)) C+ C Paste the virtual display to the pasteboard using C SMG$PASTE_VIRTUAL_DISPLAY. C- STATUS = SMG$PASTE_VIRTUAL_DISPLAY ( DISPLAY1, PASTE1, 4, 15) IF (.NOT. STATUS) CALL LIB$SIGNAL(%VAL(STATUS)) C+ C Call SMG$DELETE_CHARS to delete 4 characters from row 4 C starting from character (column) 14, removing the characters C "rder" from the word "bordered". C- STATUS = SMG$DELETE_CHARS ( DISPLAY1, 4, 4, 14) IF (.NOT. STATUS) CALL LIB$SIGNAL(%VAL(STATUS)) END |
この FORTRAN プログラムによって,SMG$DELETE_CHARS ルーチンを呼び出す前に生成される出力は 図 8-10 に示すとおりです。
図 8-10 SMG$DELETE_CHARSルーチンを呼び出す前に生成される出力
SMG$DELETE_CHARS ルーチンを呼び出した後で生成される出力は, 図 8-11 に示すとおりです。
図 8-11 SMG$DELETE_CHARS ルーチンを呼び出した後で生成される出力
SMG$DELETE_KEY_DEF |
Delete Key Definition ルーチンは,指定されたキー定義テーブルからキー定義を削除します。
SMG$DELETE_KEY_DEF key-table-id ,key-name [,if-state]
OpenVMS 用法 cond_value データ型 longword(unsigned) アクセス write only 受け渡し方 by value
key-table-id
OpenVMS 用法 identifier データ型 longword(unsigned) アクセス read only 受け渡し方 by reference
キー定義を削除するキー・テーブルを指定します。key-table-id 引数は,キー・テーブル識別子を格納した符号なしロングワードのアドレスです。key-name
OpenVMS 用法 char_string データ型 character string アクセス read only 受け渡し方 by descriptor
定義を削除するキーの名前を格納した文字列。key-name 引数は,キー名を示すディスクリプタのアドレスです。実際に使用される前に,key-name 引数から後続の空白は削除され,大文字に変換されます。使用できるキー名については,本書の 第 3 章 の 表 3-1 を参照してください。
if-state
OpenVMS 用法 char_string データ型 character string アクセス read only 受け渡し方 by descriptor
key-name 引数をさらに条件指定する状態名を格納した文字列。 if-state 引数は,状態名を示すディスクリプタのアドレスです。この引数を省略した場合には,無状態が使用されます。したがって,キーに複数の定義を割り当てて,if-state 引数の値に応じて適切な定義を使用する場合には,このルーチンがそれらの定義の中から 1 つの定義だけを削除します。
SMG$DELETE_KEY_DEF ルーチンは,指定されたキー定義テーブルからキー定義を削除します。
SS$_NORMAL 正常終了。 SMG$_INVKEYNAM key-name 引数に誤りがあります。 SMG$_INVKTB_ID key-table-id 引数に誤りがあります。 SMG$_KEYDEFPRO キー定義が保護されています。 SMG$_KEYNOTDEF キーが定義されていません。 SMG$_WRONUMARG 引数の数が誤っています。
SMG$DELETE_LINE |
Delete Line ルーチンは仮想ディスプレイの行を削除します。
SMG$DELETE_LINE display-id ,start-row [,number-of-rows]
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
削除開始行。 start-row 引数は,削除する最初の行の番号を格納した符号付きロングワードのアドレスです。number-of-rows
OpenVMS 用法 longword_signed データ型 longword (signed) アクセス read only 受け渡し方 by reference
削除行数。 number-of-rows 引数は,削除する行数を格納した符号付きロングワードのアドレスです。
SMG$DELETE_LINE ルーチンは,1行以上を仮想ディスプレイから削除し,残りの行を上にスクロールさせ削除された部分を埋めます。仮想ディスプレイの下部には空行が挿入されます。仮想カーソルは,start-row 引数で指定された行の最初のカラムに移動します。
SS$_NORMAL 正常終了。 SMG$_INVARG 引数が誤っています。 SMG$_INVDIS_ID display-id 引数が誤っています。 SMG$_INVROW 行の位置が誤っています。 SMG$_WILUSERMS ペーストボードがビデオ・ターミナルでありません。 SMG$_WRONUMARG 引数の数が誤っています。
#1 |
---|
C+ C This FORTRAN example program demonstrates the use of SMG$DELETE_LINE. C- IMPLICIT INTEGER (A-Z) C+ C Create the virtual display by calling SMG$CREATE_VIRTUAL_DISPLAY. C To give it a border, set BORDER = 1. No border would be BORDER = 0. C- ROWS = 7 COLUMNS = 50 BORDER = 1 STATUS = SMG$CREATE_VIRTUAL_DISPLAY 1 (ROWS, COLUMNS, DISPLAY1, BORDER) IF (.NOT. STATUS) CALL LIB$SIGNAL(%VAL(STATUS)) C+ C Call SMG$CREATE_PASTEBOARD to create the pasteboard. C- STATUS = SMG$CREATE_PASTEBOARD (PASTE1) IF (.NOT. STATUS) CALL LIB$SIGNAL(%VAL(STATUS)) C+ C Use SMG$PUT_CHARS to put data in the virtual display. C- STATUS = SMG$PUT_CHARS ( DISPLAY1, 1 ' This virtual display has 7 rows and 50 columns.', 2, 1) IF (.NOT. STATUS) CALL LIB$SIGNAL(%VAL(STATUS)) STATUS = SMG$PUT_CHARS ( DISPLAY1, 1 ' This is a bordered virtual display.', 4, 1) IF (.NOT. STATUS) CALL LIB$SIGNAL(%VAL(STATUS)) STATUS = SMG$PUT_CHARS ( DISPLAY1, 1 ' SMG$PUT_CHARS puts data in this virtual display.', 6, 1) IF (.NOT. STATUS) CALL LIB$SIGNAL(%VAL(STATUS)) C+ C Paste the virtual display to the pasteboard using C SMG$PASTE_VIRTUAL_DISPLAY. C- STATUS = SMG$PASTE_VIRTUAL_DISPLAY ( DISPLAY1, PASTE1, 4, 15) IF (.NOT. STATUS) CALL LIB$SIGNAL(%VAL(STATUS)) C+ C Call SMG$DELETE_LINE to delete rows 3, 4, and 5. C- STATUS = SMG$DELETE_LINE ( DISPLAY1, 3, 3) IF (.NOT. STATUS) CALL LIB$SIGNAL(%VAL(STATUS)) END |
この FORTRAN プログラムによって,SMG$DELETE_LINE ルーチンを呼び出す前に生成される出力は, 図 8-12 に示すとおりです。
図 8-12 SMG$DELETE_LINE ルーチンを呼び出す前に FORTRAN プログラムが生成する出力
SMG$DELETE_LINE ルーチンを呼び出した後に生成される出力は, 図 8-13 に示すとおりです。
図 8-13 SMG$DELETE_LINE ルーチンを呼び出した後に生成される出力
SMG$DELETE_MENU |
End Access to a Menu in the Virtual Display ルーチンは,指定された仮想ディスプレイのメニュー選択へのアクセスを終了します。
SMG$DELETE_MENU display-id [,flags]
OpenVMS 用法 cond_value データ型 longword (unsigned) アクセス write only 受け渡し方 by value
display-id
OpenVMS 用法 identifier データ型 longword (unsigned) アクセス read only 受け渡し方 by reference
メニュー選択を画面表示する仮想ディスプレイを指定します。 display-id 引数は,ディスプレイ識別子を格納した符号なしロングワードのアドレスです。flags
OpenVMS 用法 mask_longword データ型 longword (unsigned) アクセス read only 受け渡し方 by reference
省略可能なビットマスクであり,メニューを削除するときに可能なアクションを指定します。 flags 引数は,フラグを格納した符号なしロングワードのアドレスです。この引数に対して指定できる値は,SMG$M_ERASE_MENUのみです。この値が指定された場合は,メニュー項目が含まれている行すべてが削除されます。
SMG$DELETE_MENU ルーチンは,指定された仮想ディスプレイでのメニュー選択を中断します。 flags 引数は省略可能で,メニューが削除された場合に,ディスプレイからメニュー項目を削除することを指定できます。
SS$_NORMAL 正常終了。 LIB$_xxxx LIB$FREE_VM から戻された状態値。 SMG$_xxxx SMG$ERASE_DISPLAYルーチンから戻された状態値。
SMG$DELETE_PASTEBOARD |
Delete Pasteboard ルーチンはペーストボードを削除します。
SMG$DELETE_PASTEBOARD pasteboard-id [,flags]
OpenVMS 用法 cond_value データ型 longword (unsigned) アクセス write only 受け渡し方 by value
pasteboard-id
OpenVMS 用法 identifier データ型 longword (unsigned) アクセス read only 受け渡し方 by reference
削除されるペーストボード識別子。 pasteboard-id 引数は,ペーストボード識別子を格納した符号なしロングワードのアドレスです。この引数は SMG$CREATE_PASTEBOARD ルーチンによって与えられます。
flags
VMS 用法: mask_longword データ型: longword (unsigned) アクセス: read only 受け渡し方: by reference
ペーストボード削除後にターミナル画面消去を行うかどうかを指定するフラグ。 flags 引数は省略可能で,フラグを格納した符号なしロングワードのアドレスです。指定できるのは,以下の値です。
0 画面を消去しない。 SMG$M_ERASE_PBD 画面を消去する(省略時の設定値)。
SMG$DELETE_PASTEBOARD ルーチンは仮想ディスプレイに全出力を書き出し,ペーストボードの使用をすべて終了させて,ペーストボードに割り当てられていた資源を解放します。
SS$_NORMAL 正常終了。 SMG$_INVPAS_ID pasteboard-id 引数が誤っています。 SMG$_NOTPASTED 指定された仮想ディスプレイは指定されたペーストボードにペーストされていません。 SMG$_WILUSERMS ペーストボードがビデオ・ターミナルではありません。 SMG$_WRONUMARG 引数の数が誤っています。 その他 $DASSGN,LIB$FREE_VM,LIB$FREE_EF または SMG$FLUSH_BUFFER から戻される状態値。
目次 | 索引 |
|