PyQt5-如何操作弹窗(QDialog)的信号
1、导入模块,创建应用程序对象,顶层窗口对象;

2、主窗添加子控件,并将子控件封装为 setup_ui() 函数。
----文本框控件;
----按钮控件;

3、监听顶层窗口尺寸。
----设置子控件文本框大小与主窗口同步;
----设置按钮位置相对文本框不变。

4、定义函数,封装弹窗的相关代码,
----创建弹窗对象;
----设置标题等初始值,添加子控件QLabel 显示弹窗提示内容;
----并将主窗口的‘测试按钮’的clicked信号连接此函数。

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

1、accepted 信号;首先要知道accept()的功能是:
①关闭对话框,
②此时对话框的返回代码是 1;
③并发出 accepted 信号。
④发射finished信号(在下面解释)
----那么我们可以对返回代码进行判断操作:看下面的连接。
----也可以为弹窗的 accepted 信号,来连接槽函数操作;
例如图例中:
①先调用 accept()方法,发出accepted信号;
②定义一个槽函数;accepted信号连接槽函数,实现想要的动作,改变文本框背景颜色;

2、rejected信号;首先要知道reject()的功能是:
①关闭对话框,
②此时对话框的返回代码是 0;
③并发出 rejected 信号。
④发射finished信号(在下面解释)
rejected信号,操作步骤与accepted 信号一样;
例如图例中:操作后不做任何改变;

3、finished信号;
done(int)函数的功能:
①关闭对话框;
②此时对话框的返回代码是 int;
③发射finished信号;
④finished信号携带一个参数,即设置的代码int。
例如图例中:
----调用done()函数,设置对话框的返回代码 int 为100;
----发射的finished信号连接定义的槽函数;并定义一个槽函数参数value;

4、使用 accept(),reject() 函数时,他们不但发射了自身对应的信号,并发射finished信号。
例如:
弹窗出现后,当点击‘accept’按钮时,先执行了finished信号连接的槽函数;
打印:完成后返回代码:1 ;其中参数value 就是accept 的代码。
然后执行连接 accepted 信号连接的槽函数;改变文本框背景颜色;
