2016-09-03 46 views
0

我已经给模型中的父母,但它仍然显示错误消息退出时,什么时候退出是错在下面的代码QObject :: startTimer:QTimer只能用于用QThread启动的线程吗?

#!/usr/bin/env python2 
import os 
import sys 
from PyQt4.QtCore import * 
from PyQt4.QtGui import * 
from PyQt4 import uic 

import re 

CODE = 'xxx' 


class MyWindow(QDialog): 

    def __init__(self, parent=None): 
     super(MyWindow, self).__init__(parent) 
     layout = QVBoxLayout(self) 
     textedit = QTextEdit(self) 

     textedit.setPlainText(CODE) 
     layout.addWidget(textedit) 
     self.setLayout(layout) 

     self.resize(640, 280) 

     self.lineedit = QLineEdit(self) 
     self.lineedit.setGeometry(200, 12, 200, 32) 

     self.completer = QCompleter(self) 

     model = QStringListModel(self) 
     model.setStringList(['1','2','3','4']) 
     self.completer.setModel(model) 
     self.lineedit.setCompleter(self.completer) 

def main(): 

    app = QApplication(sys.argv) 
    win = MyWindow() 
    win.show() 
    sys.exit(app.exec_()) 

if __name__ == "__main__": 
    main() 

上面的代码错误了。加入此调用后

$ python2.7 ./ask_keep_completer0.py 
QObject::startTimer: QTimer can only be used with threads started with QThread 
Segmentation fault (core dumped) 

img

回答

0

,它并不会报错了再

self.setAttribute(Qt.WA_DeleteOnClose) 
相关问题