PyQt5-如何操作弹窗(QDialog)的信号

2025-10-22 19:18:03

1、导入模块,创建应用程序对象,顶层窗口对象;

PyQt5-如何操作弹窗(QDialog)的信号

2、主窗添加子控件,并将子控件封装为 setup_ui() 函数。

----文本框控件;

----按钮控件;

PyQt5-如何操作弹窗(QDialog)的信号

3、监听顶层窗口尺寸。

----设置子控件文本框大小与主窗口同步;

----设置按钮位置相对文本框不变。

PyQt5-如何操作弹窗(QDialog)的信号

4、定义函数,封装弹窗的相关代码,

----创建弹窗对象;

----设置标题等初始值,添加子控件QLabel 显示弹窗提示内容;

----并将主窗口的‘测试按钮’的clicked信号连接此函数。

PyQt5-如何操作弹窗(QDialog)的信号

5、给弹窗添加三个按钮,并设置初始值;

PyQt5-如何操作弹窗(QDialog)的信号

1、accepted 信号;首先要知道accept()的功能是:

①关闭对话框,

②此时对话框的返回代码是 1;

③并发出 accepted 信号。

④发射finished信号(在下面解释)

----那么我们可以对返回代码进行判断操作:看下面的连接。

----也可以为弹窗的 accepted 信号,来连接槽函数操作;

例如图例中:

①先调用 accept()方法,发出accepted信号;

②定义一个槽函数;accepted信号连接槽函数,实现想要的动作,改变文本框背景颜色;

PyQt5-如何操作弹窗(QDialog)的信号

2、rejected信号;首先要知道reject()的功能是:

①关闭对话框,

②此时对话框的返回代码是 0;

③并发出 rejected 信号。

④发射finished信号(在下面解释)

rejected信号,操作步骤与accepted 信号一样;

例如图例中:操作后不做任何改变;

PyQt5-如何操作弹窗(QDialog)的信号

3、finished信号;

done(int)函数的功能:

①关闭对话框;

②此时对话框的返回代码是 int;

③发射finished信号;

④finished信号携带一个参数,即设置的代码int。

例如图例中:

----调用done()函数,设置对话框的返回代码 int 为100;

----发射的finished信号连接定义的槽函数;并定义一个槽函数参数value;

PyQt5-如何操作弹窗(QDialog)的信号

4、使用 accept(),reject() 函数时,他们不但发射了自身对应的信号,并发射finished信号。

例如:

弹窗出现后,当点击‘accept’按钮时,先执行了finished信号连接的槽函数;

打印:完成后返回代码:1 ;其中参数value 就是accept 的代码。

然后执行连接 accepted 信号连接的槽函数;改变文本框背景颜色;

PyQt5-如何操作弹窗(QDialog)的信号

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢