有点不明白为什么将
当我单击图表视图时,它会逐渐增大,直到隐藏
以下是代码,它被编写为重现此效果的最小示例。
QChartView
放在QTabWidget
中时会扩展。
这是当QChartView
没有扩展(因为它被隐藏)时应用程序的图片。
QOpenGLWidget
。当我单击图表视图时,它会逐渐增大,直到隐藏
QOpenGLWidget
。
当QChartView
仅在QVBoxLayout
中与QOpenGLWidget
一起使用时,不会出现此效果。只有当我将QChartView
添加到QTabWidget
内部时才会发生这种情况。我正在尝试弄清楚如何使QChartView
不扩展,并以其他小部件相同的方式调整大小(例如,在此示例中的QTextEdit
小部件中)。以下是代码,它被编写为重现此效果的最小示例。
#include <QApplication>
#include <QChart>
#include <QChartView>
#include <QMainWindow>
#include <QOpenGLWidget>
#include <QTabWidget>
#include <QTextEdit>
#include <QVBoxLayout>
int
main(int argc, char** argv)
{
QApplication app(argc, argv);
// Main Window
QMainWindow main_window;
main_window.resize(1280, 720);
main_window.show();
// Central Widget
QWidget central_widget(&main_window);
main_window.setCentralWidget(¢ral_widget);
QVBoxLayout layout(¢ral_widget);
central_widget.setLayout(&layout);
// OpenGL Widget
QOpenGLWidget gl_widget(¢ral_widget);
gl_widget.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
layout.addWidget(&gl_widget);
// Tab Widget
QTabWidget tab_widget(¢ral_widget);
layout.addWidget(&tab_widget);
// Log
QTextEdit text_edit(&tab_widget);
text_edit.setReadOnly(true);
tab_widget.addTab(&text_edit, "Log");
// Chart View
QtCharts::QChartView chart_view(&tab_widget);
tab_widget.addTab(&chart_view, "Chart");
return app.exec();
}
QOpenGLWidget
的大小策略被设置为“Expanding”,所以我仍然不确定为什么需要进行这个更改。 - tay10r