c++ - Qt:GraphicsView 中的 TextEdit,下方有奇怪的灰色条

标签 c++ qt graphics widget

我正在使用 QGraphicsView/QGraphicsScene 并添加了一个 QTestEdit-Widget。不幸的是,TextEdit 在下方呈现了一个灰色条,我无法摆脱它。有谁知道如何实现这一点?

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    QGraphicsView *view = new QGraphicsView(ui->centralWidget);

    QGraphicsScene *scene = new QGraphicsScene(0, 0, 2000, 2000, view);
    scene->setSceneRect(-100,-100,400,400);

    view->setTransformationAnchor(QGraphicsView::NoAnchor);
    view->setScene(scene);

    QTextEdit *edt_test = new QTextEdit(0);
    edt_test->setGeometry(10,20,80,60);
    edt_test->setFrameStyle(QFrame::Plain | QFrame::Box);
    scene->addWidget(edt_test);
}

application window, with QTextEdit rendered, but with gray bar below

最佳答案

使用 StyleSheet 没有解决问题,但以下方法工作正常:

QTextEdit *edt_test = new QTextEdit(0);
QGraphicsProxyWidget *proxy = scene->addWidget(edt_test);
edt_test->setFrameStyle(QFrame::Plain | QFrame::Box);
proxy->setGeometry(QRectF(10,20,80,60));

基于ProxyWidget 调用setGeometry 是解决方案。看起来很奇怪......

关于c++ - Qt:GraphicsView 中的 TextEdit,下方有奇怪的灰色条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25893326/

相关文章:

c# - 如何使 DirectX 控件在 C# 窗体上部分透明

java - 如何确定用于绘制折线图的一系列数字的正确域?

C++ 和 Xcode : Apple Mach-O Linker error?

c++ - 在基类方法中调用不同类的方法

c++ - 以在使用临时对象调用时生成编译器错误的方式重载方法

c++ - 如何声明和定义Poco Logger?

qt - 单独的 QTreeWidgetItem 缩进

c++ - 使用 QtConcurrent 使用 QImageReader 读取图像文件

c++ - 如何在线程完成后运行我的 Qt 函数?

algorithm - 如何在任意四边形内刻上一个矩形或圆形