Ironpython Winforms 按键回车
Ironpython Winforms KeyPress Enter
社区,
我是一个完全的编程菜鸟,但我从 Whosebug 学到了很多东西(我希望...)
我的问题:
我正在使用 ironpython 并尝试创建一个 GUI。目前我正在努力让 KeyPress 事件正常工作。我有 TextBox,如果有人按下 "Enter Key" 它应该做些什么。就像开始另一个功能。
我正在使用 IDE PyCharm 进行编码。
感谢您对这个问题的帮助。提前致谢:)
这是我目前尝试过的(只是一个例子,不是真正的代码):
import clr
# Set references
clr.AddReference("System.Drawing")
clr.AddReference("System.Windows.Forms")
# Import Winforms
from System.Drawing import *
from System.Windows.Forms import *
class MyClass(Form):
def __init__(self):
self.Text = "MyGui"
self.Size = Size(500, 500)
self.CenterToScreen()
self.create_textbox()
def create_textbox(self):
mytxtbox = TextBox()
mytxtbox.Name = "Textbox1"
mytxtbox.Location = Point(50, 50)
mytxtbox.Size = Size(100, 25)
mytxtbox.KeyPress += KeyPressEventHandler(self.press)
def press(self, sender, args):
key = args.KeyChar
if key == Keys.Enter:
print("You pressed Enter in the TextBox")
# Run this thang
form1 = MyClass()
Application.Run(form1)
您想使用 KeyDown 获取 Enter 键,而不是 KeyPress:
mytxtbox.KeyDown += on_enter
def on_enter(self, e, args):
key = e.KeyChar
if key == Keys.Enter:
print("You pressed Enter in the TextBox")
社区,
我是一个完全的编程菜鸟,但我从 Whosebug 学到了很多东西(我希望...)
我的问题:
我正在使用 ironpython 并尝试创建一个 GUI。目前我正在努力让 KeyPress 事件正常工作。我有 TextBox,如果有人按下 "Enter Key" 它应该做些什么。就像开始另一个功能。
我正在使用 IDE PyCharm 进行编码。
感谢您对这个问题的帮助。提前致谢:)
这是我目前尝试过的(只是一个例子,不是真正的代码):
import clr
# Set references
clr.AddReference("System.Drawing")
clr.AddReference("System.Windows.Forms")
# Import Winforms
from System.Drawing import *
from System.Windows.Forms import *
class MyClass(Form):
def __init__(self):
self.Text = "MyGui"
self.Size = Size(500, 500)
self.CenterToScreen()
self.create_textbox()
def create_textbox(self):
mytxtbox = TextBox()
mytxtbox.Name = "Textbox1"
mytxtbox.Location = Point(50, 50)
mytxtbox.Size = Size(100, 25)
mytxtbox.KeyPress += KeyPressEventHandler(self.press)
def press(self, sender, args):
key = args.KeyChar
if key == Keys.Enter:
print("You pressed Enter in the TextBox")
# Run this thang
form1 = MyClass()
Application.Run(form1)
您想使用 KeyDown 获取 Enter 键,而不是 KeyPress:
mytxtbox.KeyDown += on_enter
def on_enter(self, e, args):
key = e.KeyChar
if key == Keys.Enter:
print("You pressed Enter in the TextBox")