ठीक है, मैं एक छोटा PyQt4 ऐप लिख रहा हूं, यह सिर्फ एक ही हां/नहीं संवाद है जिसे बाहरी आदेश निष्पादित करना है (उदा। 'निकालें/dev/sr0') और छोड़ दें।पीईक्यूटी संवाद - बटन दबाए जाने के बाद इसे कैसे छोड़ें?
ऐप चलता है, यह "हां" बटन दबाकर कमांड निष्पादित करता है, लेकिन कमांड निष्पादित करते समय मैं संवाद को बाहर नहीं निकाल सकता।
#!/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()
यहां मेरा कोड है। जब मैं "हां" पर क्लिक करता हूं, तो यह 'eject/dev/sr0' कमांड को ठीक से कॉल करता है, लेकिन उसके बाद संवाद अभी भी दिखाई देता है। मुझे ऐप को बंद करने के लिए "नहीं" पर क्लिक करना होगा, जब मैं आदेश निष्पादित करता हूं तो इसे स्वचालित रूप से बंद करना चाहता हूं। मुझे क्या जोड़ना/संशोधित करना चाहिए?
और यह सरल रेखा समाधान था। धन्यवाद। –