【发布时间】:2016-01-31 12:12:46
【问题描述】:
我正在尝试创建一个简单的 QML 应用程序。 QML 文件很简单:
import QtQuick 2.2
import QtQuick.Window 2.1
Window {
id: root
objectName: "window"
visible: true
width: 800
height: 480
color: "#16FF16"
}
我正在使用以下 C++ 代码:
QApplication app(argc, argv);
QQmlApplicationEngine engine;
engine.load(QUrl("qrc:/qml/main.qml"));
QObject *topLevel = engine.rootObjects().value(0);
QQuickWindow *window = qobject_cast<QQuickWindow *>(topLevel);
//window->setFlags(Qt::Widget|Qt::FramelessWindowHint);
window->show();
return app.exec();
这显示窗口正常,背景颜色如预期的那样有点绿色。但是,一旦我取消注释该行:
window->setFlags(Qt::Widget|Qt::FramelessWindowHint);
现在窗口总是显示为黑色!
如何设置此无框架属性而不产生这些意外副作用?
【问题讨论】:
-
你的意思是“取消注释掉一行”吗?