首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Ironpython Winforms KeyPress Enter

Ironpython Winforms KeyPress Enter
EN

Stack Overflow用户
提问于 2018-07-09 02:27:08
回答 1查看 505关注 0票数 0

社区,

我是一个编程新手,但我从stackoverflow学到了很多东西(我希望...)

我的问题是:

我正在使用ironpython,并试图创建一个GUI。目前,我正在努力让KeyPress事件正常工作。我有TextBox,如果有人按下"Enter键“,它应该会做一些事情。比如启动另一个函数。

我正在使用集成开发环境的PyCharm进行编码。

我很感谢你在这个问题上的帮助。提前感谢:)

这是我到目前为止尝试过的(只是一个例子,不是真正的代码):

代码语言:javascript
复制
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)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-09 05:50:30

您希望使用KeyDown而不是KeyPress来获取Enter键:

代码语言:javascript
复制
mytxtbox.KeyDown += on_enter

def on_enter(self, e, args):
    key = e.KeyChar
    if key == Keys.Enter:
        print("You pressed Enter in the TextBox")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51234918

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档