X11のkeysymを入力される文字列に変換するにはどうすればよいですか?

コーナー

私がある(例えば、0x1a2用キーシンボル番号有しXK_brevekeysymdef.hLATIN2文字セット内の、)。そのkeysymを発するキーが押されたときに入力される文字列を取得する方法はありますか?

を使用してみXKeysymToStringましたbreveが、入力する文字)ではなく、記号()のフルネームが表示され˘ます。

XLookupString似たようなことをするものがありますが、私が持っていないXKeyEventが必要です(私はkeysym番号しか持っていません)。

user414777

Xutf8LookupString(3)を使用する必要があります。これにより、入力メソッドと有効なxkbルールも考慮されます。

すべてのキーを押すと文字列が直接生成されるわけではありません。

例:

#include <X11/Xlib.h>
#include <stdio.h>

int main(int argc, char** argv) {

  KeySym keysym = 0x1a2;

  Display* display = XOpenDisplay(":0");

  XIM xim = XOpenIM(display, 0, 0, 0);
  XIC xic = XCreateIC(xim, XNInputStyle, XIMPreeditNothing | XIMStatusNothing, NULL);

  XKeyPressedEvent event;
  event.type = KeyPress;
  event.display = display;
  event.state = 0;
  event.keycode = XKeysymToKeycode(display, keysym);

  char buffer[32];
  KeySym ignore;
  Status return_status;
  Xutf8LookupString(xic, &event, buffer, 32, &ignore, &return_status);
  printf("%s\n", buffer);

  XCloseDisplay(display);
  return 0;
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

入力文字列を基数変換で整数に変換するにはどうすればよいですか?

分類Dev

不確定な数の入力文字列を変換するにはどうすればよいですか?

分類Dev

大文字の入力を小文字に変換するにはどうすればよいですか?

分類Dev

入力文字列の複数の文字を変更するにはどうすればよいですか?(python 3)

分類Dev

文字列として入力された分数をCで浮動小数点数に変換するにはどうすればよいですか?

分類Dev

入力した文字列値の色を変更するにはどうすればよいですか?

分類Dev

Ruby2.3。ユーザー入力文字列を配列に変換してから、個々の要素に分割するにはどうすればよいですか?

分類Dev

入力した文字列の平均の長さを計算するにはどうすればよいですか

分類Dev

入力した数値の文字列をint配列に変換するにはどうすればよいですか?

分類Dev

可変長の文字列を入力し、ユーザー定義の長さの文字列を出力するにはどうすればよいですか?

分類Dev

入力値の文字を別の文字に置き換えるにはどうすればよいですか?

分類Dev

文字列の日付入力を取得して別の形式に変換するにはどうすればよいですか?

分類Dev

getJSONの関数を入力するには、文字列を渡すにはどうすればよいですか?

分類Dev

別の文字列のx位置に文字列を挿入するにはどうすればよいですか?

分類Dev

文字列の1次元配列を文字列に変換するにはどうすればよいですか?

分類Dev

`EditText`に入力された最後の文字を取得するにはどうすればよいですか?

分類Dev

入力の結果をF#のintに変換するにはどうすればよいですか?

分類Dev

Javaで文字列を文字の配列に変換するにはどうすればよいですか

分類Dev

入力文字列に記載されている変数を変更するにはどうすればよいですか?

分類Dev

文字列を変換するにはどうすればよいですか?

分類Dev

'asp:ListBox'に文字列の配列を入力するにはどうすればよいですか?

分類Dev

ユーザーから文字列入力を取得し、入力された文字列の合計文字値を出力するにはどうすればよいですか?

分類Dev

次の文字列を日付文字列に再度変換するにはどうすればよいですか?

分類Dev

Javaで文字列の特定の文字をFloatに変換するにはどうすればよいですか?

分類Dev

C ++で整数の後に文字列を入力するにはどうすればよいですか?

分類Dev

文字列の配列をIntの配列に変換するにはどうすればよいですか?

分類Dev

「配列形式の文字列」をPHPの配列に変換するにはどうすればよいですか?

分類Dev

文字のリストをpurescriptの文字列に変換するにはどうすればよいですか

分類Dev

文字列の特殊文字のみをUnicodeに変換するにはどうすればよいですか?

Related 関連記事

  1. 1

    入力文字列を基数変換で整数に変換するにはどうすればよいですか?

  2. 2

    不確定な数の入力文字列を変換するにはどうすればよいですか?

  3. 3

    大文字の入力を小文字に変換するにはどうすればよいですか?

  4. 4

    入力文字列の複数の文字を変更するにはどうすればよいですか?(python 3)

  5. 5

    文字列として入力された分数をCで浮動小数点数に変換するにはどうすればよいですか?

  6. 6

    入力した文字列値の色を変更するにはどうすればよいですか?

  7. 7

    Ruby2.3。ユーザー入力文字列を配列に変換してから、個々の要素に分割するにはどうすればよいですか?

  8. 8

    入力した文字列の平均の長さを計算するにはどうすればよいですか

  9. 9

    入力した数値の文字列をint配列に変換するにはどうすればよいですか?

  10. 10

    可変長の文字列を入力し、ユーザー定義の長さの文字列を出力するにはどうすればよいですか?

  11. 11

    入力値の文字を別の文字に置き換えるにはどうすればよいですか?

  12. 12

    文字列の日付入力を取得して別の形式に変換するにはどうすればよいですか?

  13. 13

    getJSONの関数を入力するには、文字列を渡すにはどうすればよいですか?

  14. 14

    別の文字列のx位置に文字列を挿入するにはどうすればよいですか?

  15. 15

    文字列の1次元配列を文字列に変換するにはどうすればよいですか?

  16. 16

    `EditText`に入力された最後の文字を取得するにはどうすればよいですか?

  17. 17

    入力の結果をF#のintに変換するにはどうすればよいですか?

  18. 18

    Javaで文字列を文字の配列に変換するにはどうすればよいですか

  19. 19

    入力文字列に記載されている変数を変更するにはどうすればよいですか?

  20. 20

    文字列を変換するにはどうすればよいですか?

  21. 21

    'asp:ListBox'に文字列の配列を入力するにはどうすればよいですか?

  22. 22

    ユーザーから文字列入力を取得し、入力された文字列の合計文字値を出力するにはどうすればよいですか?

  23. 23

    次の文字列を日付文字列に再度変換するにはどうすればよいですか?

  24. 24

    Javaで文字列の特定の文字をFloatに変換するにはどうすればよいですか?

  25. 25

    C ++で整数の後に文字列を入力するにはどうすればよいですか?

  26. 26

    文字列の配列をIntの配列に変換するにはどうすればよいですか?

  27. 27

    「配列形式の文字列」をPHPの配列に変換するにはどうすればよいですか?

  28. 28

    文字のリストをpurescriptの文字列に変換するにはどうすればよいですか

  29. 29

    文字列の特殊文字のみをUnicodeに変換するにはどうすればよいですか?

ホットタグ

アーカイブ