代码之家  ›  专栏  ›  技术社区  ›  Jookia

键盘代码ID

c++
  •  1
  • Jookia  · 技术社区  · 15 年前

    当发现SDL和X11使用相同的键盘键id(我认为它们被称为keysyms)时,我想使用这些代码。但是,我不了解它们,我不想只使用它们的定义,因为我不想在编写库时包含内容,也不想依赖X11或SDL,因为我可能只使用X11或SDL。是否有类似0x200之类的键盘代码列表?

    让我来解释一下,我使用SDL和X11作为库来进行输入,但是我希望我的应用程序有自己的键定义来抽象SDL、X11和Win32键。

    2 回复  |  直到 15 年前
        1
  •  1
  •   Karel Petranek    15 年前

    直接使用代码是不明智的,因为这些代码可能随时更改(与它们的定义不同)。利用SDL使用与X11相同的代码这一事实听起来并不好。更好的方法是为X11和SDL创建桥头,如下所示:

    #define MYLIB_SOME_KEY0 SDL_SOME_KEY0
    #define MYLIB_SOME_KEY1 SDL_SOME_KEY1
    

    然后有条件地包含相应的头。

    如果我没有说服您,您可以在SDL.h头中找到相应的定义。

        2
  •  0
  •   Martijn Courteaux    15 年前

    如果我理解得好,那我认为这是不可能的。操作系统负责处理键盘信号并将其转换为相应的键盘布局(例如:azerty或qwerty)。把它送到申请表上。


    A W型

    如果是这样,则可以手动将“a”更改为“q”,将“z”更改为“w”。