当前位置:编程学习 > wap >>

Qt 新手,求教一个简单问题。


lm::lm(QWidget *parent)
: QMainWindow(parent)
{
ui.setupUi(this);
QTreeWidget *ptree = new QTreeWidget;
ptree->setFixedSize(200,300);
QHBoxLayout *mailLayout = new QHBoxLayout;
mailLayout->addWidget(ptree);
        mailLayout->addLayout(ui.verticalLayout_2);

ui.centralWidget->setLayout(mailLayout);

}



描述:在构造函数里面动态地添加自己的新控件treewidget,同时利用到ui里的资源。我重新seylayout后,为什么看不到我添加的treeWidget? --------------------编程问答-------------------- 可以能是你调用ptree->setFixedSize(200,300); 设置固定大小影响,将其设置为QSizePolicy::Perfer试试 --------------------编程问答--------------------
引用 1 楼 davidsu33 的回复:
可以能是你调用ptree->setFixedSize(200,300); 设置固定大小影响,将其设置为QSizePolicy::Perfer试试


lm::lm(QWidget *parent)
: QMainWindow(parent)
{
ui.setupUi(this);
QTreeWidget *ptree = new QTreeWidget;
QHBoxLayout *mailLayout = new QHBoxLayout;
mailLayout->addWidget(ptree);
    mailLayout->addLayout(ui.verticalLayout_2);
ptree->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Preferred);
ui.centralWidget->setLayout(mailLayout);

}

应该不是这个原因,我按照你说的改了下,还是没有出来treewidget --------------------编程问答-------------------- 除 --------------------编程问答--------------------
引用 2 楼 bing_dian 的回复:
Quote: 引用 1 楼 davidsu33 的回复:

可以能是你调用ptree->setFixedSize(200,300); 设置固定大小影响,将其设置为QSizePolicy::Perfer试试


lm::lm(QWidget *parent)
: QMainWindow(parent)
{
ui.setupUi(this);
QTreeWidget *ptree = new QTreeWidget;
QHBoxLayout *mailLayout = new QHBoxLayout;
mailLayout->addWidget(ptree);
    mailLayout->addLayout(ui.verticalLayout_2);
ptree->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Preferred);
ui.centralWidget->setLayout(mailLayout);

}

应该不是这个原因,我按照你说的改了下,还是没有出来treewidget

我试了试你的这个代码没有加入
mailLayout->addLayout(ui.verticalLayout_2);
是没问题的,不知道你的ui.verticalLayout_2布局是怎么布的,你去了这个试试,应该是这个导致的。
补充:移动开发 ,  Qt
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,