首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向QLayout添加项时出错

向QLayout添加项时出错
EN

Stack Overflow用户
提问于 2015-12-07 09:51:29
回答 1查看 1.3K关注 0票数 0

我试图在QLayout ( PyQT5)中添加一个条目,如下所示:

代码语言:javascript
复制
def add_parts_BC(self):
        """This adds a tab with part B and C"""

        BCVerticalLayout = QVBoxLayout()
        partB = PartB()
        partC = PartC()

        BCVerticalLayout.addWidget(PartB, QtCore.Qt.AlignTop)
        BCVerticalLayout.addWidget(PartC)

        # add the layout to the tabbed widget layout
        self.tabbedWidget.addTab(BCVerticalLayout, "Part B and C")

然后,我得到以下错误消息:

代码语言:javascript
复制
BCVerticalLayout.addWidget(PartB, QtCore.Qt.AlignTop)
TypeError: QBoxLayout.addWidget(QWidget, int stretch=0, Qt.Alignment alignment=0): argument 1 has unexpected type 'PyQt5.QtCore.pyqtWrapperType'

我不知道哪里做错了事。有什么想法吗?

顺便说一下,PartA和PartB看起来是这样的:

代码语言:javascript
复制
class PartA(QWidget):
    def __init__(self):
        super().__init__()

    # more code here


class PartB(QWidget):
    def __init__(self):
        super().__init__()

    # more code here
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-07 09:59:36

我认为这是一个错误:

代码语言:javascript
复制
partB = PartB() #name of object with lower case p
partC = PartC()

BCVerticalLayout.addWidget(PartB, QtCore.Qt.AlignTop) #name of object with upper case p

所以应该是:

代码语言:javascript
复制
partB = PartB() 
partC = PartC()

BCVerticalLayout.addWidget(partB, QtCore.Qt.AlignTop)  
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34130648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档