记录一次PyQt5的QLineEdit控件判断是否为空(报错使人疯狂,解决亦然)

记录一次PyQt5的QLineEdit控件判断是否为空(报错使人疯狂,解决亦然)_第1张图片

要求:判断该控件内容是否为空。

实现方式之一:

f = self.ui.lineEdit2_3_1.text()
    if f:
        '''这里写控件有内容的相关代码'''
    else:
        '''这里写控件没有内容的相关代码'''

实现方式之二:

if self.ui.lineEdit2_3_1.text() == "":
    '''这里写控件没有内容的相关代码'''
else:
    '''这里写控件有内容的相关代码'''

以上两种均可实现。

记录一次PyQt5的QLineEdit控件判断是否为空(报错使人疯狂,解决亦然)_第2张图片

        笔者在实现这个功能的时候, 由于选择页码这里需要是整数,这里我加了int()。也正是这个int()让我经常运行代码是,闪退。

分析

        这里笔者发现,不管LineEdit()控件是否为空,我都将其的.text()加了int()。导致控件为空时,在这块代码

page = int(self.ui.lineEdit2_3_1.text())

闪退了。

可能控件为空时,没有.text()函数。因此报错。

因此最后,你得分开写

f = self.ui.lineEdit2_3_1.text()
    if f:
        page = int(self.ui.lineEdit2_3_1.text())
        '''这里写控件有内容的相关代码'''
    else:
        '''这里写控件没有内容的相关代码'''

你可能感兴趣的:(遇到的问题,ui,pyqt5,python)