相关疑难解决方法(0)

如何在python tkinter中绑定Ctrl + /?

<Control-Shift-Key-0>
<Control-Key-plus>
Run Code Online (Sandbox Code Playgroud)

工作,但

<Control-Key-/>
Run Code Online (Sandbox Code Playgroud)

没有.

我无法在python中绑定ctrl+ /.是否有任何可能的密钥文件?

python key-bindings

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

Tkinter中的多个键事件绑定 - "Control + E""Command(apple)+ E"等

Mac OS X 10.6.6 - Tkinter

我想绑定多键事件,虽然我找到了一篇文章和Tk手册页,但我一直无法正常工作.我是新来的.

我的成功喜忧参半.我已经能够获得Shift +字母键,但不能获得Control或Command(Apple键).我真正想做的是Command + letter和Control +字母键,因此它理论上可以在Windows和OS X中使用.

我希望它在窗口级工作,所以我使用root.也许有更好的方法.以下是我尝试过的内容:

root.bind('<Shift-E>', self.pressedCmdE)   # Works
root.bind('e', self.pressedCmdE)           # Works
root.bind('<Command-E>', self.pressedCmdE) # Does Not Work
#root.bind('<Mod1-E>', self.pressedCmdE)   #   # Do Mod1, M1, and
#root.bind('<M1-E>', self.pressedCmdE)     #   # Command mean the same thing?
Run Code Online (Sandbox Code Playgroud)

奇怪的是,当我按alt/option +(E,N或其他)时,会产生错误.它是否与PythonLauncher交互?

2011-06-16 16:19:22.618 Python[1546:d07] An uncaught exception was raised
2011-06-16 16:19:22.621 Python[1546:d07] *** -[NSCFString characterAtIndex:]: Range or index out of bounds
2011-06-16 16:19:22.622 Python[1546:d07] *** Terminating app due to uncaught exception 'NSRangeException', reason: '*** …
Run Code Online (Sandbox Code Playgroud)

events binding command tkinter key

9
推荐指数
2
解决办法
1万
查看次数

如何在 Tkinter 菜单中获取 Mac“命令”符号

我为朋友的生意编写了一个 Python 程序,并使用 Tkinter 作为界面。到目前为止,所有功能都已添加到主程序窗口中,但我现在添加打印功能,创建了一个简单的“文件”菜单,并希望向该菜单添加“打印”条目,包括显示相关的键盘快捷键。

在我的 Mac 上,我希望快捷键是 Command-P。我找到了 Mac“命令”符号的 Unicode 值,并尝试了各种方法来创建一个简单地连接该符号和字母“P”的加速器字符串,但没有任何效果。我会在“打印”旁边的菜单中显示符号或字母,但不会同时显示两者。

以下是添加菜单项的完整代码行,以及构建字符串的最新尝试(我相信我unicode.join在 Stack Overflow 的其他地方找到了此选项):

sub_menu.add_command(label="Print", command=self.print_, accelerator=unicode.join(u"\u2318", u"P"))
// Only the "P" displays
Run Code Online (Sandbox Code Playgroud)

以下是我尝试过的一些其他选项(为了清楚起见,行被截断)。对于每个选项,仅显示“命令”符号:

accelerator=u"\u2318\u0050"
accelerator=u"\u2318" + "P"
accelerator=u"\u2318" + u"P"
accelerator=u"\u2318P"
accelerator=u"".join([u"\u2318", u"P"])
Run Code Online (Sandbox Code Playgroud)

到目前为止,我还不需要了解太多有关 Unicode 字符串的知识,所以也许我在这方面做错了。然而,我所做的所有尝试都是在这里和其他地方进行各种搜索的结果,但到目前为止没有任何效果。任何有关如何完成这项工作的见解都将受到欢迎!

Python 2.7.3、Mac OS X 10.8.3

python unicode macos tkinter accelerator

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

标签 统计

python ×2

tkinter ×2

accelerator ×1

binding ×1

command ×1

events ×1

key ×1

key-bindings ×1

macos ×1

unicode ×1