当前位置: 代码迷 >> QT开发 >> 初学Qt layout有关问题
  详细解决方案

初学Qt layout有关问题

热度:47   发布时间:2016-04-25 03:48:53.0
初学Qt layout问题
QObject::connect(box1,SIGNAL(valueChanged(int)),slider1,SLOT(setValue(int)));
    QObject::connect(slider1,SIGNAL(valueChanged(int)),box2,SLOT(setValue(int)));
    QObject::connect(box2,SIGNAL(valueChanged(ing)),slider2,SLOT(setValue(int)));
    QHBoxLayout *lay=new QHBoxLayout;
    QVBoxLayout *veh=new QVBoxLayout;
    lay->addWidget(box1);
    lay->addWidget(slider1);
    veh->addWidget(box2);
    veh->addWidget(slider2);
    get->setLayout(lay);
    get->setLayout(veh);
    box1->setValue(35);
    get->show();
    
    return a.exec();



为什么运行结果是这样的为什么不是先水平的layout 然后是竖直的layout 而是只有一个水平的layout 怎么改 求大神指教!~

------解决方案--------------------
你调用二次setLayout,这种方式 肯定是不行的了,这样它肯定只能显示一种布局的。
如果你要两个box都显示的话,建议再一个QHBoxLayout 包装一下就可以了。
------解决方案--------------------
引用:
Quote: 引用:

setLayout只能设置一个最外层的layout,其他的可以嵌套在这个layout里面

问一下为什么别人的滑条是横着的 我的竖直的? 怎么可以改成水平的

yourSlider->setOrientation(Qt::Horizontal);