PyQt4 - объект QString не имеет атрибута 'isEmpty''
Я пытаюсь использовать файл PyQt на Python 3.4, который изначально был предназначен для Python 2.7. У меня не установлен 2.7, но я верю, что изначально код работал.
Я вижу ошибку на strVal
вернулся из QInputDialog.getItem
:
import random, sys, queue, serial, glob, os, csv, time
import PyQt4.Qwt5 as Qwt
from PyQt4.QtCore import *
from PyQt4.QtGui import *
...
strVal , ok = QInputDialog.getItem(self, 'Select a port',
'Serial port:', ports, 0, False)
if ok and not strVal.isEmpty():
self.portname.setText(strVal)
Из документации, QInputDialog.getItem
должен вернуть QString
(не просто строка), а QString
объекты имеют атрибут .isEmpty()
,
Так как я не получаю .isEmpty()
атрибут, это как-то не импортирует QString
?
1 ответ
Тип возвращаемого значения - обычная строка Python, а не QString, поскольку реализация "API #2" в pyqt4 (также для pyside). Поскольку пустая строка считается ложной, вы можете сделать
if ok and strVal:
self.portname.setText(strVal)