无法在方法中使用我的小部件Qcombobox,为什么?

格罗夫洛

pyQt的新手,我试图用项目列表填充Qcombobox,然后检索用户选择的文本。一切正常,除了在触发CurrentIndexChanged信号时,在我的方法中使用.currentText()无法获取选择的索引,但无法获取文本,因为我有一个错误告诉我无法调用我的方法中的小部件。Python无法在该方法中识别我的QCombobox,因此无法使用.currentText(),也无法确定原因。

谢谢 !

请参阅下面的代码。

class MainWindow(QMainWindow):        
    def __init__(self, *args, **kwargs):
        super(MainWindow, self).__init__(*args, **kwargs)

        self.setWindowTitle("Votre territoire")

        layout = QVBoxLayout()

        listCom = self.getComINSEE()
        cbCommunes = QComboBox()
        cbCommunes.addItems(listCom)
        cbCommunes.currentIndexChanged.connect(self.selectionChange)

        layout.addWidget(cbCommunes)

        cbCommunes = QWidget()
        cbCommunes.setLayout(layout)

        self.setCentralWidget(cbCommunes)


    def getComINSEE(self):
        # some code to fill my list com
        return com

    def selectionChange(self, i):
        # Error : unhandled AttributeError "'MainWindow' object has no attribute 'cbCommunes'"
        texte = self.cbCommunes.currentText()
        print(f"Index {i} pour la commune {i}")

app = QApplication(sys.argv)

window = MainWindow()
window.show()

app.exec()
尼克

要使用任何类方法访问对象,您需要使该对象成为类的属性。

更改cbCommunesself.cbCommunes-无处不在。

from PyQt5.Qt import *


class MainWindow(QMainWindow):        
    def __init__(self, *args, **kwargs):
        super(MainWindow, self).__init__(*args, **kwargs)
        self.setWindowTitle("Votre territoire")

        listCom = self.getComINSEE()
        self.cbCommunes = QComboBox()
        self.cbCommunes.addItems(listCom)
        self.cbCommunes.currentIndexChanged.connect(self.selectionChange)

        centralwidget = QWidget()
        self.setCentralWidget(centralwidget)

        layout = QVBoxLayout(centralwidget)
        layout.addWidget(self.cbCommunes)

    def getComINSEE(self):
        # some code to fill my list com
        com = ['item 1', 'item 2', 'item 3', 'item 4', 'item 5',]
        return com

    def selectionChange(self, i):
        # Error : unhandled AttributeError "'MainWindow' object has no attribute 'cbCommunes'"
        texte = self.cbCommunes.currentText()
        print(f"Index {i} pour la commune {i}, texte -> {texte}")


if __name__ == '__main__':
    import sys
    app = QApplication(sys.argv)
    window = MainWindow()
    window.show()
    sys.exit(app.exec_())

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如果我使用grid(),为什么在调整窗口大小时窗口小部件无法缩放?

来自分类Dev

为什么我的小部件重叠了?

来自分类Dev

为什么我的小部件无法找到我的应用可以在SwiftUI中找到的类?

来自分类Dev

当我运行python程序时,为什么我的tk小部件无法打开?

来自分类Dev

为什么在jQuery小部件中使用jQuery parent()。index()不起作用

来自分类Dev

AsyncTask - 为什么我可以在 doInBackground 方法中访问布局小部件?

来自分类Dev

为什么在构建小部件之前,我的initState()不调用使用sharedprefs的函数?

来自分类Dev

为什么我的Tkinter小部件不使用粘性和列/行权重进行拉伸

来自分类Dev

为什么我们必须从一个小部件更新多个小部件?

来自分类Dev

为什么当我在无状态小部件中点击 textField 时,它会重建小部件?

来自分类Dev

为什么更改后的tkinter小部件无法正确放置?

来自分类Dev

为什么我的jQuery小部件返回“对象不是函数”?

来自分类Dev

为什么我的Button小部件不能垂直展开

来自分类Dev

(PyQt)为什么我不能更改QTextEdit小部件的字体?

来自分类Dev

为什么我的小部件上传递的参数为null?

来自分类Dev

为什么我的iOS小部件这么高?

来自分类Dev

为什么我可以在方法中使用“ this”

来自分类Dev

在自定义Kendo小部件中使用AngularJS服务的最佳方法是什么?

来自分类Dev

为什么在状态小部件中始终使用TextEditingController?

来自分类Dev

我无法使用 Entry 小部件中的文本

来自分类Dev

为什么我无法在MySQL中使用“>”比较日期?

来自分类Dev

为什么我的背景色无法在ComboBox中使用

来自分类Dev

为什么我无法在Beautifulsoup中使用.text提取文本

来自分类Dev

为什么我无法在Android中使用JsonArray检索数据?

来自分类Dev

为什么我的背景色无法在ComboBox中使用

来自分类Dev

为什么树视图小部件虽然我只给了它两列,但要多加一列?我也无法控制它的宽度

来自分类Dev

为什么我的WP小部件不响应我的代码编辑?涉及TPL

来自分类Dev

如果我更改angularjs中的视图,为什么我的Twitter小部件不呈现?

来自分类Dev

为什么我要在公共方法中使用代码合同?

Related 相关文章

  1. 1

    如果我使用grid(),为什么在调整窗口大小时窗口小部件无法缩放?

  2. 2

    为什么我的小部件重叠了?

  3. 3

    为什么我的小部件无法找到我的应用可以在SwiftUI中找到的类?

  4. 4

    当我运行python程序时,为什么我的tk小部件无法打开?

  5. 5

    为什么在jQuery小部件中使用jQuery parent()。index()不起作用

  6. 6

    AsyncTask - 为什么我可以在 doInBackground 方法中访问布局小部件?

  7. 7

    为什么在构建小部件之前,我的initState()不调用使用sharedprefs的函数?

  8. 8

    为什么我的Tkinter小部件不使用粘性和列/行权重进行拉伸

  9. 9

    为什么我们必须从一个小部件更新多个小部件?

  10. 10

    为什么当我在无状态小部件中点击 textField 时,它会重建小部件?

  11. 11

    为什么更改后的tkinter小部件无法正确放置?

  12. 12

    为什么我的jQuery小部件返回“对象不是函数”?

  13. 13

    为什么我的Button小部件不能垂直展开

  14. 14

    (PyQt)为什么我不能更改QTextEdit小部件的字体?

  15. 15

    为什么我的小部件上传递的参数为null?

  16. 16

    为什么我的iOS小部件这么高?

  17. 17

    为什么我可以在方法中使用“ this”

  18. 18

    在自定义Kendo小部件中使用AngularJS服务的最佳方法是什么?

  19. 19

    为什么在状态小部件中始终使用TextEditingController?

  20. 20

    我无法使用 Entry 小部件中的文本

  21. 21

    为什么我无法在MySQL中使用“>”比较日期?

  22. 22

    为什么我的背景色无法在ComboBox中使用

  23. 23

    为什么我无法在Beautifulsoup中使用.text提取文本

  24. 24

    为什么我无法在Android中使用JsonArray检索数据?

  25. 25

    为什么我的背景色无法在ComboBox中使用

  26. 26

    为什么树视图小部件虽然我只给了它两列,但要多加一列?我也无法控制它的宽度

  27. 27

    为什么我的WP小部件不响应我的代码编辑?涉及TPL

  28. 28

    如果我更改angularjs中的视图,为什么我的Twitter小部件不呈现?

  29. 29

    为什么我要在公共方法中使用代码合同?

热门标签

归档