相关疑难解决方法(0)

如何将ASCII字符转换为CGKeyCode?

我需要一个函数,给定一个字符,返回CGKeyCode与当前键盘布局上该字符的位置相关联的函数.例如,给定"b",kVK_ANSI_B如果使用US QWERTY,或者kVK_ANSI_N使用Dvorak ,它应该返回.

Win32 API具有VkKeyScan()用于此目的的功能; X11具有此功能XStringToKeySym().CG API中有这样的功能吗?

我需要这个来传递参数CGEventCreateKeyboardEvent().我尝试使用CGEventKeyboardSetUnicodeString(),但显然不支持修饰符标志(我需要).

我已经广泛搜索了这个但是找不到合适的答案.目前我正在使用以下代码(在线发现),它有效,但不是很优雅(而且很难解释如何简化),我宁愿不在生产代码中使用它:

#include <stdint.h>
#include <stdio.h>
#include <ApplicationServices/ApplicationServices.h>

CGKeyCode keyCodeForCharWithLayout(const char c,
                                   const UCKeyboardLayout *uchrHeader);

CGKeyCode keyCodeForChar(const char c)
{
    CFDataRef currentLayoutData;
    TISInputSourceRef currentKeyboard = TISCopyCurrentKeyboardInputSource();

    if (currentKeyboard == NULL) {
        fputs("Could not find keyboard layout\n", stderr);
        return UINT16_MAX;
    }

    currentLayoutData = TISGetInputSourceProperty(currentKeyboard,
                                                kTISPropertyUnicodeKeyLayoutData);
    CFRelease(currentKeyboard);
    if (currentLayoutData == NULL) {
        fputs("Could not find layout data\n", …
Run Code Online (Sandbox Code Playgroud)

c macos keycode keypress quartz-graphics

29
推荐指数
5
解决办法
2万
查看次数

在C#中跨平台实现SendKeys?

我需要在Windows,Mac和Linux上自动化桌面应用程序(不是Web浏览器)测试.在Windows上我使用SendKeys,我在Mac和Linux上使用什么?我是否可以从xUnit中优先使用任何跨平台的.NET Core SendKeys实现?

c# linux macos cross-platform sendkeys

12
推荐指数
2
解决办法
1609
查看次数

C++(Qt)跨平台库,用于模拟键盘输入,发送键,发送kestrokes等

有没有人知道用于模拟键盘输入的真正的跨平台C++库?

我做了一个google plus stackoverflow研究,但没有找到基于Qt的,也没有找到适用于Windows,Linux/X11和Mac OS X的通用C++库.

只有一些代码片段可以像这样:

视窗:

  • 有很多例子如何通过keybd_event函数来实现.

Linux的:

Mac OS X.

所以,问题是我错过了什么?这个世界有一个用于模拟键盘输入的跨平台C++库吗?

PS:当我写这个问题时,网站建议在"类似问题"中阻止一个很酷的想法 - 研究免费游戏引擎.实际上,有许多跨平台的开源游戏引擎,它们都有键盘输入模块.因此,即使他们没有键盘仿真,他们也有很好的开发这样的库的起点.

更新1:FreePascal/Lazarus已经有了这样的库,这不是很安静的乐趣.很高兴看到图书馆架构:http://wiki.lazarus.freepascal.org/MouseAndKeyInput

c++ keyboard simulator cross-platform input

5
推荐指数
1
解决办法
4421
查看次数

OSX以编程方式调用声级图形

我有一个可以在OSX下更改音量的应用程序.它缺少的是当按下声音上/下键时提供的视觉反馈.有谁知道如何以编程方式调用该行为?谢谢

macos core-audio

3
推荐指数
1
解决办法
1003
查看次数

在Mac OS X中移动光标(在Python和/或R中)

有人可以帮我弄清楚如何使用Python或R脚本在Mac OS X中移动光标吗?计划是读取实时信号,并根据流量值向上或向下移动光标.谢谢你的帮助......谢谢!

python macos r

1
推荐指数
1
解决办法
704
查看次数