Python中文
首页
教程
问答
标签
搜索
登录
注册
PyQt对话框-如何使它在按下按钮后退出?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>好吧,我正在写一个小型的PyQt4应用程序,它只是一个Yes/No对话框,必须执行一个外部命令(例如“eject/dev/sr0”)并退出。</p> <p>应用程序运行,它在按下“是”按钮后执行命令,但我无法在执行命令时使对话框本身退出。</p> <pre><code>#!/usr/bin/python # -*- coding: utf-8 -*- import sys import os import subprocess from PyQt4 import QtGui from PyQt4 import QtCore from subprocess import call cmd = 'eject /dev/sr0' class Example(QtGui.QWidget): def __init__(self): super(Example, self).__init__() self.initUI() def initUI(self): btn = QtGui.QPushButton('Yes', self) btn.clicked.connect(lambda: os.system(cmd)) btn.resize(180, 40) btn.move(20, 35) qbtn = QtGui.QPushButton('No', self) qbtn.clicked.connect(QtCore.QCoreApplication.instance().quit) qbtn.resize(180, 40) qbtn.move(20, 80) self.setWindowTitle('Test') self.show() def main(): app = QtGui.QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) if __name__ == '__main__': main() </code></pre> <p>这是我的密码。当我单击“Yes”时,它会正确地调用“eject/dev/sr0”命令,但之后对话框仍然可见。我必须单击“否”关闭应用程序,我希望它在执行命令时自动关闭。我应该添加/修改什么?</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<pre><code>btn.clicked.connect(self.close) </code></pre> <p>那是我的建议</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何用if条件捕获函数返回值
10 回答
如何用if语句判断列表中是否存在该索引?
9 回答
如何用if语句向量化numpy数组中的最大值?
5 回答
如何用IF语句有条件地保存零碎的结果?
2 回答
如何用if语句测试异常对象?
10 回答
如何用IF语句编写二元函数
2 回答
如何用igraph在python中创建顶点权重的图?
4 回答
如何用ijson和python解析json
9 回答
如何用iloc求子矩阵
2 回答
如何用Imagemagick或PIL绘制高质量的图像笔划(边框)?
3 回答
如何用importlib在python中动态导入模块?
10 回答
如何用import语句重写python内置函数?
7 回答
如何用imshow混合裁剪的强度并显示正确的混合强度?
8 回答
如何用in dictionary解析havin dictionary中的json文件
8 回答
如何用in-Django URL替换%20
1 回答
如何用in\op正确构造查询
7 回答
如何用inbuild对象替换文件
3 回答
如何用inheritan类实现flask restful
2 回答
如何用intersphinx正确地编写对外部文档的交叉引用?
7 回答
如何用int修改LpVariable?
4 回答