基本上我试图让无线触摸屏键盘与我的Windows笔记本电脑一起使用。
我跟着this tutorial制作一个RPi 2 Model B模拟蓝牙键盘,它通过PiTooth(this tutorial中使用的Python脚本)将键盘按键从键盘传输到PC上。
在脚本运行的情况下,我运行了我的Lazarus应用程序,没有任何虚拟键被按下/键入任何内容。
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
Buttons, MouseAndKeyInput, LCLType, ExtCtrls;
...
procedure TForm1.SpeedButton11Click(Sender: TObject);
begin
KeyInput.Press(VK_7);
end;
我花了很多时间冲浪,挖掘,试验和错误,并做了以下观察:
PiTooths keymap.py "KEY_7" : 36,
和Lazarus VK_7 = $37;
。我尝试将VK_7 : $37,
添加到keymap.py,但它没有识别$
字符,导致错误导致PiTooth.py无法启动。
当PiTooth.py通过终端运行时,使用物理键盘输入的字符显示在终端中并由我的PC接收
当PiTooth.py通过终端运行时,使用matchbox-keyboard键入的字符显示在终端中,但不会发送到我的PC或由我的PC接收
在终端中运行PiTooth.py时,使用Lazarus TSpeedButton点击按钮,基础代码KeyInput.Press(VK_7);
不会显示在终端中,也不会发送到我的PC或由我的PC接收
我尝试寻找KeyInput.Press(VK_7);
的替代品,但在Lazarus没有运气,尽管我读到Delphi有一个名为xsendkey
和keybd_event
的函数,Python有uinput
但我需要Lazarus的GUI能力。
可以在Lazarus中使用像uinput
这样的Python函数吗?
目前还不确定要做什么。任何和所有的帮助表示赞赏。已经超过3个月了:'(
注意:我使用的触摸屏是电阻性的,触摸时会被识别为鼠标点击。
顺便说一下,我对Linux和编程相对较新,但如果这意味着任何事情,我会有一点体面的理解大声笑