| 日本-日本語 | 
      
  | 
  
      
  | 
  
| 
 | 
     
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. | 
| 目次 | 索引 | 
      
  | 
  ||||||||