Python Qt设计器:如何向按钮添加自定义插槽和代码

Python Qt设计器:如何向按钮添加自定义插槽和代码,python,qt4,qt-designer,Python,Qt4,Qt Designer,我使用Qt4设计器,我希望当我点击“是”按钮时,一些代码会执行。当我点击“否”时,会执行其他一些代码。我怎么做 单击编辑信号/插槽工具 为按钮创建连接。为此,请在设计器中用鼠标左键按住按钮以选择按钮。将鼠标移动到主窗口中的某个位置,以创建与主窗口的连接(就像红线与接地连接一样) 松开鼠标按钮时,会出现配置连接对话框 在此对话框中,在左侧文本控件(发送器)中选择一个信号,例如,pressed() 然后按右侧文本控件(接收器)中的edit。此时会出现主窗口的信号/插槽对话框 在插槽面板中添加一个新插

我使用Qt4设计器,我希望当我点击“是”按钮时,一些代码会执行。当我点击“否”时,会执行其他一些代码。我怎么做

  • 单击
    编辑信号/插槽
    工具

  • 为按钮创建连接。为此,请在设计器中用鼠标左键按住按钮以选择按钮。将鼠标移动到主窗口中的某个位置,以创建与主窗口的连接(就像红线与接地连接一样)

  • 松开鼠标按钮时,会出现
    配置连接
    对话框

  • 在此对话框中,在左侧文本控件(发送器)中选择一个信号,例如,
    pressed()

  • 然后按右侧文本控件(接收器)中的
    edit
    。此时会出现主窗口的
    信号/插槽对话框

  • 在插槽面板中添加一个新插槽(绿色十字)。此时会出现文本
    slot1()
    。双击它以编辑该行,并在按下“是”时写入函数名
    doit\u()
    。接受

  • 现在,在
    配置连接
    对话框中,您将在右侧文本控件中看到您的功能。选择并接受

  • 现在在设计器中,您可以在小部件中看到信号和功能

    • 右键单击小部件
    • 选择“转到插槽…”
    • 选择一个信号并单击“确定”
    该信号的自定义插槽声明和定义将添加到*.cpp和*.h文件中。其名称将自动生成

    upd
    抱歉,我没有注意到这个问题是关于Python和QtDesigner本身的,我在考虑QtCreator IDE中的设计器模式。但是,对于正在寻找Qt/C++信息的人来说,这仍然很有用,所以我留下答案。

    哼哼!有人可以在Qt designer文档中给出一个提示,说明这个特定的问题是在哪里解决的?我自己也找不到。它不是信号/插槽stuff@joaquin:这是信号和插槽的东西,因为他所要做的就是加载用户界面,并将插槽连接到有问题的按钮。这些都是Qt的基础知识。@lunaryorn谢谢。很抱歉,您如何创建插槽“my_custom_function”以便将其绑定到信号/插槽编辑器上按钮的clicked()信号。也许我错过了一些东西,但我在designer文档中找不到方法,在那里我只找到了如何绑定发送方和接收方预定义的信号和插槽。你能用这种方式给出一个链接并回答OP问题吗?谢谢这正是我想要的:)你能从设计器中编辑函数吗?或者你需要先生成代码吗?不,你不能从设计器中编辑插槽。在设计器中,您只需定义信号将连接到的插槽的名称。执行uic时,自动生成的ui_filename.h包括信号和插槽之间的连接。请注意,即使插槽不存在,也不会出现编译错误。因此,您必须在.h文件中添加一个插槽(最好是专用的),并在.cpp文件中实现它,类似于Python。@WebSelect如何在pyqt中添加我需要做的事情?您好,我使用的是QT designer 4.8.6,在
    配置连接
    窗口中,
    编辑
    选项变灰(已禁用且无法单击)。有人知道为什么会出现这种奇怪的行为吗?是否有一种自动方法可以通过鼠标单击将插槽(在designer中定义)添加到代码(.h和.c)中?