zoukankan      html  css  js  c++  java
  • Python复选框与删除元素

    from PyQt5.QtWidgets import QWidget, QCheckBox, QApplication,QLabel
    from PyQt5.QtCore import Qt
    import sys,sip
    
    class Example(QWidget):
        def __init__(self):
            super().__init__()
            self.settings()
    
        def settings(self):
            self.a = QCheckBox('是否更新', self)
            self.a.move(20, 20)
            self.a.stateChanged.connect(self.printresult)
            
            self.setGeometry(300, 300, 250, 150)
            self.setWindowTitle('复选框')
            self.show()
    
        def printresult(self):
            print(self.a.text())
            print(self.a.checkState())
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        ex = Example()
        sys.exit(app.exec_())

    简单吧。
    先用QCheckBox创建一个复选框。
    然后绑定信号。

    第一个是打印复选框的内容,就是‘是否更新’。
    第二个是打印是否勾上,勾上了就是2,没勾上就是0。

    由这个我们可以来判断用户有没有勾。

    当然,还有一个方法,就是这样的:

    from PyQt5.QtWidgets import QWidget, QCheckBox, QApplication,QLabel
    from PyQt5.QtCore import Qt
    import sys,sip
    
    class Example(QWidget):
        def __init__(self):
            super().__init__()
            self.settings()
    
        def settings(self):
            self.a = QCheckBox('是否更新', self)
            self.a.move(20, 20)
            self.a.toggle()
            self.a.stateChanged.connect(self.printresult)
            
            self.setGeometry(300, 300, 250, 150)
            self.setWindowTitle('复选框')
            self.show()
    
        def printresult(self):
            print(self.a.text())
            print(self.a.checkState())
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        ex = Example()
        sys.exit(app.exec_())

    这个self.a.toggle就是默认勾上。

    那么我们来看个例子,里面还有一个新内容,就是删除元素。我就先说吧。就是pyqt5里的sip库,使用sip.delete来删除元素。del也许也可以,不过我不用,所以不清楚。

    from PyQt5.QtWidgets import QWidget, QCheckBox, QApplication,QPushButton
    from PyQt5.QtCore import Qt
    import sys,sip
    
    class Example(QWidget):
        def __init__(self):
            super().__init__()
            self.settings()
    
        def settings(self):
            self.a = QCheckBox('是否更新', self)
            self.a.move(20, 20)
            self.a.stateChanged.connect(self.b)
    
            self.yes = QPushButton('我选好了!',self)
            self.yes.move(50,50)
            self.yes.clicked.connect(self.printresult)
    
            self.setGeometry(300, 300, 250, 150)
            self.setWindowTitle('复选框')
            self.show()
    
        def b(self):
            self.number = self.a.checkState()
    
    
        def printresult(self):
            try:
                if self.number == 2:
                    print('更新完毕!')
                    sip.delete(self.a)
                    sip.delete(self.yes)
                if self.number == 0:
                    sip.delete(self.a)
                    sip.delete(self.yes)
                    print('下次更新')
            except:
                sip.delete(self.a)
                sip.delete(self.yes)
                print('下次更新')
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        ex = Example()
        sys.exit(app.exec_())

    ————————————————
    版权声明:本文为CSDN博主「波斯王」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/Persia_king/article/details/105267264

    你有什么心态,就有什么样的人生。管不好自己的心态,注定你就是个弱者。
  • 相关阅读:
    File类
    Java运算符
    JAVA语法
    数据库-子查询
    爬取笔趣阁_完本书籍
    爬取动物图片源码
    爬取电影天堂上最新电影的下载链接的源码
    pyinstaller的安装、使用、出错解决办法
    Emmet插件使用方法总结
    Markdown基本语法
  • 原文地址:https://www.cnblogs.com/LQZ888/p/12626740.html
Copyright © 2011-2022 走看看