2017-04-15 15 views
0
from PyQt4 import QtCore, QtGui 

try: 
    _fromUtf8 = QtCore.QString.fromUtf8 
except AttributeError: 
    def _fromUtf8(s): 
     return s 

try: 
    _encoding = QtGui.QApplication.UnicodeUTF8 
    def _translate(context, text, disambig): 
     return QtGui.QApplication.translate(context, text, disambig, _encoding) 
except AttributeError: 
    def _translate(context, text, disambig): 
     return QtGui.QApplication.translate(context, text, disambig) 

class Ui_MainWindow(object): 
    def setupUi(self, MainWindow): 
     MainWindow.setObjectName(_fromUtf8("MainWindow")) 
     MainWindow.resize(456, 600) 
     self.centralwidget = QtGui.QWidget(MainWindow) 
     self.centralwidget.setObjectName(_fromUtf8("centralwidget")) 
     self.Applicant_Name = QtGui.QLineEdit(self.centralwidget) 
     self.Applicant_Name.setGeometry(QtCore.QRect(40, 30, 161, 21)) 
     self.Applicant_Name.setObjectName(_fromUtf8("Applicant_Name")) 
     self.textEdit = TextEdit(self.centralwidget) 
     self.textEdit.setGeometry(QtCore.QRect(10, 70, 401, 521)) 
     self.textEdit.setObjectName(_fromUtf8("textEdit")) 
     self.pushButton = QtGui.QPushButton(self.centralwidget) 
     self.pushButton.setGeometry(QtCore.QRect(240, 30, 75, 23)) 
     self.pushButton.setObjectName(_fromUtf8("pushButton")) 
     MainWindow.setCentralWidget(self.centralwidget) 
     self.statusbar = QtGui.QStatusBar(MainWindow) 
     self.statusbar.setObjectName(_fromUtf8("statusbar")) 
     MainWindow.setStatusBar(self.statusbar) 

     self.retranslateUi(MainWindow) 
     QtCore.QMetaObject.connectSlotsByName(MainWindow) 

    def retranslateUi(self, MainWindow): 
     MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow", None)) 
     self.pushButton.setText(_translate("MainWindow", "file", None)) 

class TextEdit(QtGui.QTextEdit): 
    def __init__(self, type, parent=None): 
     super(TextEdit, self).__init__(parent) 
     self.setAcceptDrops(True) 

    def dragEnterEvent(self, event): 
     if event.mimeData().hasUrls: 
      event.accept() 
     else: 
      event.ignore() 

    def dragMoveEvent(self, event): 
     if event.mimeData().hasUrls: 
      event.setDropAction(QtCore.Qt.CopyAction) 
      event.accept() 
     else: 
      event.ignore() 

    def dropEvent(self, event): 
     if event.mimeData().hasUrls: 
      event.setDropAction(QtCore.Qt.CopyAction) 
      event.accept() 
      links = [] 
      for url in event.mimeData().urls(): 
       links.append(str(url.toLocalFile())) 
      self.emit(QtCore.SIGNAL("dropped"), links) 
     else: 
      event.ignore() 

if __name__ == "__main__": 
    import sys 
    app = QtGui.QApplication(sys.argv) 
    MainWindow = QtGui.QMainWindow() 
    ui = Ui_MainWindow() 
    ui.setupUi(MainWindow) 
    MainWindow.show() 
    sys.exit(app.exec_()) 

こんにちは、私はpythonを初めて使っています。私のコードを実行すると、QTextEditウィジェットは表示されません。どうしてですか?私はドラッグ&ドロップ機能をQTextEditに追加して、テキストコンテンツをファイルに表示することができます。ありがとうございました。QLineEditが表示されません

答えて

0
def __init__(self, parent): 
     super(TextEdit, self).__init__(parent) 
     self.setAcceptDrops(True)