c++ - 小部件和主窗口

标签 c++ qt qwidget

这是我的代码:

mLayout = new QVBoxLayout;
mChart = new OpenChart(this);
setCentralWidget(mChart);
mLayout->addWidget(mChart);
mLayout->setMargin(0);
setLayout(mLayout);
QMap<QString,double> empleados;
empleados["Ana"]=5000.0;
empleados["Juan"]=6000.0;
empleados["Luis"]=7000.0;
empleados["Jorge"]=8000.0;
empleados["Francisco"]=100.0;
empleados["Mario"]=10000.0;
mChart->setTitle("sueldos");
mChart->setTipo(OpenChart::Sectores_2D);
mChart->setTipoleyenda(OpenChart::Circular);
const auto empleadosEnd=empleados.end();
for(auto i=empleados.begin();i!=empleadosEnd;++i)
{mChart->addItem(i.key(),i.value());}

输出: enter image description here

我想让小部件显示在主窗口的整个窗口上!请帮助我!!!!!

最佳答案

  • 创建一个 QWidget 并将父窗口作为您的主窗口。

  • 将图表小部件添加到您的 vboxlayout。

  • 将 vBoxLayout 设置为在第一步中创建的虚拟小部件。

  • 然后将虚拟小部件指定为中央小部件。

粗略代码如下:

mLayout = new QVBoxLayout;

QWidget *vBox = new QWidget(this);

mChart = new OpenChart(this);

mLayout->addWidget(mChart);

vBox->setLayout(mLayout);

setCentralWidget(vBox);

不要再次调用 setLayout,因为布局已经设置为 QWidget (vbox)。

关于c++ - 小部件和主窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47559399/

相关文章:

c++ - 多个 View 中固定大小的 QGraphics 项目?

c++ - 在 QDialog 中使用 QGridLayout 定位 QPushButton?

python - 从 PyQt 的主窗口打开 Ui_Form

c++ - Qt——QWidget到底是什么

c++ - OpenGL 几何着色器三角形不会绘制没有错误

c++ - 更优雅的重载模板类解决​​方案

c++ - 类似于 unity 但对于 C++ 程序员

c++ - 如何在静态析构函数中安全地使用 `std::error_category`?

angular - Qt QWebEngine 远程调试 : Chrome developer tools no longer work

c++ - Qt - 访问表格中的复选框