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问题
将Pandas数据帧转换为PyTorch张量?
6 回答
将Pandas数据帧转换为scipy稀疏矩阵
10 回答
将Pandas数据帧转换为Spark Datafram时出现问题
7 回答
将pandas数据帧转换为spark DataFram时出错
3 回答
将Pandas数据帧转换为spark datafram时收到错误
6 回答
将Pandas数据帧转换为Spark数据帧
4 回答
将Pandas数据帧转换为Tensorflow数据
9 回答
将Pandas数据帧转换为tkinter obj
7 回答
将pandas数据帧转换为XML
7 回答
将Pandas数据帧转换为值sql语句
6 回答
将pandas数据帧转换为元组
1 回答
将pandas数据帧转换为元组列表
10 回答
将pandas数据帧转换为元组列表并删除所有pandas数据类型
7 回答
将pandas数据帧转换为具有头和数据类型的numpy数组
8 回答
将pandas数据帧转换为内存中的拼花地板,并将其加载到Python中的Hadoop中
6 回答
将pandas数据帧转换为内存中类似文件的对象?
1 回答
将Pandas数据帧转换为内存功能(&F)
3 回答
将pandas数据帧转换为列表列表
6 回答
将pandas数据帧转换为列表列表以输入到RNN
4 回答
将Pandas数据帧转换为单行DataFram
2 回答