我想創建一個無框窗口和圓角的簡單Qt UI。從與QtQuick 2應用模板創建一個新項目開始,我的代碼看起來是這樣的:Qt5&QtQuick2 - 透明主窗口
的main.cpp
#include <QtGui/QGuiApplication>
#include "qtquick2applicationviewer.h"
int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
QtQuick2ApplicationViewer viewer;
viewer.setMainQmlFile(QStringLiteral("qml/qtquick-test/main.qml"));
viewer.setFlags(Qt::FramelessWindowHint);
viewer.showExpanded();
return app.exec();
}
main.qml
import QtQuick 2.0
Rectangle {
width: 360
height: 360
radius: 10
color: "red"
Text {
text: qsTr("Hello World")
anchors.centerIn: parent
}
MouseArea {
anchors.fill: parent
onClicked: {
Qt.quit();
}
}
}
這是結果:
我想做的是擺脫白色的角落,通過使主窗口透明。但是,據我所知,Qt5沒有辦法做到這一點,因爲我們沒有樣式表等,我沒有使用QtWidget。我應該使用QtWidget嗎?
順便說一句,我是Qt和Qt5的新手。
看起來這可能在5.1中通過使用'QWidget :: createWindowContainer()'創建一個容器窗口作爲容器窗口來解決。查看[bug報告](https://bugreports.qt-project.org/browse/QTBUG-25643)和[commit](https://codereview.qt-project.org/#change,44285)。我會嘗試從源代碼編譯5.1,看看我能否得到它的工作。 – andrewrjones 2013-02-08 23:50:55
讓我們知道請 – 2013-07-18 08:49:47
@andrewrjones你可以回答並接受你自己的問題。 – 2014-07-14 16:08:44