日本-日本語 |
|
|
|
OpenVMS マニュアル |
|
日本語OpenVMS
|
目次 | 索引 |
GET CHARACTER |
KEYCODEの表示文字を調べます。
status =IM$GET_CHARACTER (keycode, ch-string, ch-len)
OpenVMS 用法 cond_value データ型 longword (unsigned) アクセス write_only 受け渡し方 by value
keycode
OpenVMS 用法 longword_unsigned データ型 longword_integer (unsigned) アクセス read only 受け渡し方 by reference
整数値KEYCODE。ch-string
OpenVMS 用法 char string データ型 char string アクセス write only 受け渡し方 by descriptor
KEYCODEによって指定されたキーの表示文字。指定されたKEYCODEがカナキーのKEYCODEのときには,半角カタカナ・コードが返されます。ch-len
OpenVMS 用法 word_unsigned データ型 word (unsigned) アクセス write only 受け渡し方 by reference
"ch-string"に書き込まれた文字のバイト数。固定長文字列の場合のパディング文字は含みません。"ch-length"はこのバイト数を示す 1 ワードのアドレスです。文字列がch-stringデスクリプタによって指定された長さに切られたときには, "ch-length"はこの長さになります。
status =ImGetCharacter (keycode, ch)
GET CHARACTERは条件値を返します。
unsigned int keycode (Input)
整数値KEYCODE。unsigned char *ch (Output)
KEYCODEに対応する表示文字の文字列。この文字列はヌル文字で終了します。指定されたKEYCODEがカナキーのKEYCODEのときには,半角カタカナ・コードが返されます。
GET CHARACTERは,KEYCODEに対応する表示文字を得るのに使われます。もし,'g'キーに対応するKEYCODEをGET CHARACTERに渡すと,文字列"g"を得ることができます。表示文字は最大1バイトなので,アプリケーションは"ch"のために,終端のヌル文字を含めて最低2バイト用意しなければなりません。
シンボル | 重大度 | メッセージ |
---|---|---|
IM__SUCCESS | Success | Normal successful completion. |
IM__NOPRINTABLE | Information | The keycode is not for a key of printable character. |
IM__INVKEYCODE | Error | Invalid keycode |
IM__INVSTRDES | Error | Invalid string descriptor. |
IM__FATERRLIB | Fatal | Fatal library internal error. |
MC GET CHARACTER |
KEYCODEの表示文字を調べます。
status =IM$MC_GET_CHARACTER (keycode, ch-string, ch-len,codeset)
OpenVMS 用法 cond_value データ型 longword (unsigned) アクセス write_only 受け渡し方 by value
keycode
OpenVMS 用法 longword_unsigned データ型 longword_integer (unsigned) アクセス read only 受け渡し方 by reference
整数値KEYCODE。ch-string
OpenVMS 用法 char string データ型 char string アクセス write only 受け渡し方 by descriptor
KEYCODEによって指定されたキーの表示文字。指定されたKEYCODEがカナキーのKEYCODEのときには,半角カタカナ・コードが返されます。ch-len
OpenVMS 用法 word_unsigned データ型 word (unsigned) アクセス write only 受け渡し方 by reference
"ch-string"に書き込まれた文字のバイト数。固定長文字列の場合のパディング文字は含みません。"ch-length"はこのバイト数を示す1ワードのアドレスです。文字列がch-stringデスクリプタによって指定された長さに切られた場合には, "ch-length"はこの長さになります。codeset
OpenVMS 用法 longword_unsigned データ型 longword_integer(unsigned) アクセス read only 受け渡し方 by reference
アプリケーションで使用しているコードセット。
status =ImMCGetCharacter (keycode, ch, codeset)
GET CHARACTERは条件値を返します。
unsigned int keycode (Input)
整数値KEYCODE。unsigned char *ch (Output)
KEYCODEに対応する表示文字の文字列。この文字列はヌル文字で終了します。指定されたKEYCODEがカナキーのKEYCODEのときには,半角カタカナ・コードが返されます。int codeset (Input)
アプリケーションで使用しているコードセット。
MC GET CHARACTERは,KEYCODEに対応する表示文字を得るのに使われます。もし,'g'キーに対応するKEYCODEをMC GET CHARACTERに渡すと,文字列"g"を得ることができます。MC GET CHARACTER は,コードセットにより異なる半角カナのコードに対応しています。コードセットして指定できるシンボルは次のとおりです。
シンボル コードセット 半角カナコード IM$C_DECKANJI DEC漢字 0xA1 〜 0xDF IM$C_SDECKANJI SuperDEC漢字 SS2(0x8E) + 0xA1 〜 0xDF IM$C_EUCJP 日本語EUC SS2(0x8E) + 0xA1 〜 0xDF IM$C_SJIS シフトJIS 0xA1 〜 0xDF
表示文字は最大2バイトなので,アプリケーションは"ch"のために,終端のヌル文字を含めて最低3バイト用意しなければなりません。
シンボル | 重大度 | メッセージ |
---|---|---|
IM__SUCCESS | Success | Normal successful completion. |
IM__NOPRINTABLE | Information | The keycode is not for a key of printable character. |
IM__INVKEYCODE | Error | Invalid keycode |
IM__INVSTRDES | Error | Invalid string descriptor. |
IM__FATERRLIB | Fatal | Fatal library internal error. |
IM__INVCODESET | Error | Invalid Codeset Specified. |
INIT KEY STATE |
キーのSTATEを初期化します。STATEは"initial"に移ります。
status =IM$INIT_KEY_STATE (unit_id)
unit_id
OpenVMS 用法 longword_unsigned データ型 longword_integer (unsigned) アクセス read only 受け渡し方 by reference
OPEN PROFILEによって返された整数値。
status =ImInitKeyState (unit_id)
INIT KEY STATEは条件値を返します。
int unit_id (Input)
OPEN PROFILEによって返された整数値。
INIT KEY STATEは,キーのSTATEを初期化します。状態はシステム定義のSTATEである"initial"に移ります。"initial"はSET KEYBINDが行われたときの最初のSTATEです。
シンボル | 重大度 | メッセージ |
---|---|---|
IM__SUCCESS | Success | Normal successful completion. |
IM__ILLUNIT | Error | Illegal unit ID. |
IM__NOKEYBIND | Error | Keybind data is not set yet. Execute SET KEYBIND first. |
ENCODE KEY |
通常の文字,数字キーに対応するコード,またはファンクション・キーやキーパッド・キーが発生するエスケープ・シーケンスからKEYCODEを作ります。
status =IM$ENCODE_KEY (string, keycode)
OpenVMS 用法 cond_value データ型 longword (unsigned) アクセス write_only 受け渡し方 by value
string
OpenVMS 用法 char string データ型 char string アクセス read only 受け渡し方 by descriptor
文字列。単純な表示文字に対応するコードまたはエスケープ・シーケンスが指定できます。keycode
OpenVMS 用法 longword_unsigned データ型 longword_integer (unsigned) アクセス write only 受け渡し方 by reference
表示文字またはエスケープ・シーケンスに対応するKEYCODE。
keycode =ImEncodeKey (string, length)
整数のKEYCODEの値を返します。エラーの場合はENCODE KEYは0を返します。
char *string (Input)
文字列。単純な表示文字に対応するコードまたはエスケープ・シーケンスが指定できます。int length (Input)
第1パラメータの文字列の長さ。
ENCODE KEYは,表示文字のコードまたはキーボードのキーが発生するエスケープ・シーケンスを,KEYCODEに変換します。エスケープ・シーケンスが正しくなかったり,サポートされていないときにはエラーとなります。キーは1つずつ渡さなければなりません。2つ以上のキーを同時に渡すとエラーとなります。サポートされている表示文字コードは,ASCIIコードと半角カナコードです。ファンクション・キーなどのようにエスケープ・シーケンスを発生するキーは,エスケープ・シーケンス全体を一度に ENCODE KEY に渡す必要があります。
シンボル | 重大度 | メッセージ |
---|---|---|
IM__SUCCESS | Success | Normal successful completion. |
IM__ILLESCAPE | Error | Illegal escape sequence. |
IM__INVSTRDES | Error | Invalid string descriptor. |
MC ENCODE KEY |
通常の文字,数字キーに対応するコード,またはファンクション・キーやキーパッド・キーが発生するエスケープ・シーケンスからKEYCODEを作ります。
status =IM$MC_ENCODE_KEY (string, keycode, codeset)
OpenVMS 用法 cond_value データ型 longword (unsigned) アクセス write_only 受け渡し方 by value
string
OpenVMS 用法 char string データ型 char string アクセス read only 受け渡し方 by descriptor
文字列。単純な表示文字に対応するコードまたはエスケープ・シーケンスが指定できます。keycode
OpenVMS 用法 longword_unsigned データ型 longword_integer (unsigned) アクセス write only 受け渡し方 by reference
表示文字またはエスケープ・シーケンスに対応するKEYCODE。codeset
OpenVMS 用法 longword_unsigned データ型 longword_integer (unsigned) アクセス read only 受け渡し方 by reference
アプリケーションが使用しているコードセット。
keycode =ImMCEncodeKey (string, length, codeset)
整数のKEYCODEの値を返します。エラーの場合はENCODE KEYは0を返します。
char *string (Input)
文字列。単純な表示文字に対応するコードまたはエスケープ・シーケンスが指定できます。int length (Input)
第1パラメータの文字列の長さ。int codeset (Input)
アプリケーションが使用しているコードセット。
MC ENCODE KEYは,表示文字のコードまたはキーボードのキーが発生するエスケープ・シーケンスを,KEYCODEに変換します。エスケープ・シーケンスが正しくなかったり,サポートされていないときにはエラーとなります。MC ENCODE KEY は,コードセットによって異なる半角カナのコードに対応しています。コードセットとして指定できるシンボルは次のとおりです。
シンボル コードセット 半角カナコード IM$C_DECKANJI DEC漢字 0xA1 〜 0xDF IM$C_SDECKANJI SuperDEC漢字 SS2(0x8E) + 0xA1 〜 0xDF IM$C_EUCJP 日本語EUC SS2(0x8E) + 0xA1 〜 0xDF IM$C_SJIS シフトJIS 0xA1 〜 0xDF
半角カナコード以外の入力に対する出力は ENCODE_KEY と同じです。
シンボル | 重大度 | メッセージ |
---|---|---|
IM__SUCCESS | Success | Normal successful completion. |
IM__ILLESCAPE | Error | Illegal escape sequence. |
IM__INVSTRDES | Error | Invalid string descriptor. |
IM__INVCODESET | Error | Invalid string descriptor. |
KEYSYM TO KEYCODE |
DECwindowsのKEYSYMの値を対応するKEYCODEに変換します。
status =IM$KEYSYM_TO_KEYCODE (keysym, modifier, keycode)
OpenVMS 用法 cond_value データ型 longword (unsigned) アクセス write_only 受け渡し方 by value
keysym
OpenVMS 用法 longword_unsigned データ型 longword_integer (unsigned) アクセス read only 受け渡し方 by reference
DECwindowsのKEYSYMの値。modifier
OpenVMS 用法 longword_unsigned データ型 longword_integer (unsigned) アクセス read only 受け渡し方 by reference
モディファイア・キーを示すビット列。keycode
OpenVMS 用法 longword_unsigned データ型 longword_integer (unsigned) アクセス write only 受け渡し方 by reference
KEYCODEを示す整数値。
keycode =ImKeysymToKeycode (keysym, modifier)
KEYSYMに対応するKEYCODEを返します。 KEYSYMに対応するKEYCODEがないときは0を返します。
unsigned int keysym (Input)
DECwindowsのKEYSYMの値。unsigned int modifier (Input)
モディファイア・キーを示すビット列。
KEYSYM TO KEYCODEは,DECwindowsの環境で使われるKEYSYMの値を,IMLIBの KEYCODEに変換します。コントロール・キーのようなモディファイア・キーは,パラメータで指定します。すべてのモディファイアがサポートされているわけではありませんが,サポートされていないキーが押されたということを示すために,モディファイアは必ず指定してください。
モディファイアを指定するためには以下に示す定数値を使います。
- IM_M_MOD_SHIFT
- IM_M_MOD_LOCK
- IM_M_MOD_CTRL
- IM_M_MOD_MOD_1 (ALT)
- IM_M_MOD_MOD_2 (カナLOCK)
モディファイアのビット列は,XLookupStringによって返されるビット列と同じなので, DECwindows のアプリケーションはXLookupStringが返す値をそのままKEYSYM TO KEYCODE に渡すことができます。
KEYSYM TO KEYCODEがサポートするKEYSYMの値は, 付録 A を参照してください。
シンボル | 重大度 | メッセージ |
---|---|---|
IM__SUCCESS | Success | Normal successful completion. |
IM__UNSUPKEYSYM | Error | Unsupported keysym. |
目次 | 索引 |
|