V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
CBBing
V2EX  ›  Python

PyQt5 中 QListWidget 怎么获取 item 中 combox 的当前显示的值?

  •  
  •   CBBing · 2016-04-01 23:16:14 +08:00 · 12195 次点击
    这是一个创建于 2949 天前的主题,其中的信息可能已经有所发展或是发生改变。
    在 QListWidget 中利用 QListWidgetItem 将每个 item 设置为一个 combox ,一共八个,怎样才能知道当前八个 combox 中的值
    第 1 条附言  ·  2016-04-02 13:48:01 +08:00

    就像这个图片,我需要知道每个 combobox 里的值
    11 条回复    2016-04-02 19:33:05 +08:00
    RqPS6rhmP3Nyn3Tm
        1
    RqPS6rhmP3Nyn3Tm  
       2016-04-02 12:19:37 +08:00 via Android   ❤️ 1
    .value 试试
    CBBing
        2
    CBBing  
    OP
       2016-04-02 13:19:57 +08:00
    @BXIA 不行,虽然不会报错,但还是得不到想要的值
    RqPS6rhmP3Nyn3Tm
        3
    RqPS6rhmP3Nyn3Tm  
       2016-04-02 14:13:08 +08:00 via Android   ❤️ 1
    index = combo.findText(text, QtCore.Qt.MatchFixedString)
    if index >= 0:
    combo.setCurrentIndex(index)
    不知道你要表达的是不是这个意思
    CBBing
        4
    CBBing  
    OP
       2016-04-02 14:27:20 +08:00
    @BXIA 不,我并不是想要改变 combo 里的值,而是需要知道它改变之后的值,因为想要它们每一个都不一样
    CBBing
        5
    CBBing  
    OP
       2016-04-02 14:29:15 +08:00
    @BXIA 这是一个 QListWidget ,里面的 item 是通过 QListWidgetItem 添加的
    for i in range(8):
    item = QtWidgets.QListWidgetItem()
    item.setFont(font)
    combox=QtWidgets.QComboBox()
    combox.setFont(font_combox)
    combox.addItems(Port)
    combox.setCurrentIndex(i)
    self.listWidget.addItem(item)
    self.listWidget.setItemWidget(item,combox)
    RqPS6rhmP3Nyn3Tm
        6
    RqPS6rhmP3Nyn3Tm  
       2016-04-02 14:33:38 +08:00 via Android   ❤️ 1
    抱歉,这个就不知道了…
    CBBing
        7
    CBBing  
    OP
       2016-04-02 14:37:20 +08:00
    @BXIA 还是谢谢你,我在看文档,希望能找到解决方法
    CBBing
        8
    CBBing  
    OP
       2016-04-02 15:07:48 +08:00
    @BXIA 我成功啦,谢谢你回复我
    CBBing
        9
    CBBing  
    OP
       2016-04-02 15:08:29 +08:00
    @BXIA
    for i in range(8):
    combox=self.listWidget.itemWidget(self.listWidget.item(i))
    print(combox.currentText())
    RqPS6rhmP3Nyn3Tm
        10
    RqPS6rhmP3Nyn3Tm  
       2016-04-02 15:29:34 +08:00 via Android
    原来是 currentText ,的确应该是这样
    难得看到一个用 PyQt5 的,不知道你用什么工具打包 standalone package?
    CBBing
        11
    CBBing  
    OP
       2016-04-02 19:33:05 +08:00
    @BXIA 目前还没写完, IDE 用的 PyCharm ,这只是实验课的课程设计,之前只知道 Qt ,并没有学过,所以来 V2 问
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1796 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 16:31 · PVG 00:31 · LAX 09:31 · JFK 12:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.