找回密码
 立即注册
收起左侧

关于Qt中QDockWidget添加多个Widget后的大小问题

0
回复
8455
查看
[复制链接]
累计签到:1 天
连续签到:1 天
来源: 2016-4-27 14:30:33 显示全部楼层 |阅读模式
2Qter豆
本帖最后由 Z1an 于 2016-4-27 14:32 编辑
  1. void MainWindow::creatDataDockWidget()
  2. {


  3.     QWidget *dockWidgetContents = new QWidget();
  4.     QWidget *newWidget;
  5.     newWidget = new QWidget(dockWidgetContents);

  6.     QDockWidget *dock = new QDockWidget(tr("Customers"),this);
  7.     dock->setAllowedAreas(Qt::BottomDockWidgetArea);
  8.     dock->setFeatures(QDockWidget::NoDockWidgetFeatures);
  9.     dock->setMinimumSize(QSize(1500,600));
  10.     dock->setMaximumSize(QSize(1500,524287));

  11.     QWidget *dockWidgetContents1 = new QWidget();
  12.     QWidget *newWidget1;
  13.     newWidget1 = new QWidget(dockWidgetContents1);
  14.     QTextBrowser *customerList1 = new QTextBrowser;
  15.      customerList1->setText(tr("jcidhsfjikhsgihdsfhdsigh"));
  16.      customerList1->setFixedSize(QSize(500,570));
  17.       QPushButton *buttonList1 = new QPushButton;
  18.       buttonList1->setText(tr("Press Me"));

  19.    QTextBrowser *customerList = new QTextBrowser;
  20.     customerList->setText(tr("jcidhsfjikhsgihdsfhdsigh"));
  21.     customerList->setFixedSize(QSize(500,570));
  22.      QPushButton *buttonList = new QPushButton;
  23.      buttonList->setText(tr("Press Me"));


  24.     QHBoxLayout *customerLayout = new QHBoxLayout(newWidget);
  25.     customerLayout->addWidget(customerList);
  26.     customerLayout->addWidget(buttonList);

  27.    dock->setWidget(dockWidgetContents);
  28.     addDockWidget(Qt::BottomDockWidgetArea,dock);

  29.   QDockWidget *dock1 = new QDockWidget(tr("cgfhdd"),this);
  30.     dock1->setAllowedAreas(Qt::BottomDockWidgetArea);
  31.     dock1->setFeatures(QDockWidget::NoDockWidgetFeatures);
  32.     dock1->setMinimumSize(QSize(1500,600));
  33.     dock1->setMaximumSize(QSize(1500,524287));
  34.     dock1->setWidget(dockWidgetContents1);
  35.     addDockWidget(Qt::BottomDockWidgetArea,dock1);

  36.     this->tabifyDockWidget(dock,dock1);
  37. }
复制代码
上面是我写的代码,想实现的功能是:在bottom上插入多个悬停栏,并且每次只能显示一个,悬停栏的大小为bottom以上、menu栏下面,我的toolBar已经删除了!MainWindow使用的是showMaxnum()
问题:每次debug时显示的MainWindow已经超出了我电脑的屏幕,必须最小化后再最大化才能正常,并且悬停栏无法达到我想要实现的那个功能!并且第二个QDockWidget中不能显示所添加的widget

附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了