Я пытаюсь создать простой пользовательский интерфейс Qt с окном без рамки и закругленными углами. Начиная с нового проекта с шаблоном QtQuick 2 Application, мой код выглядит так:
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.
QWidget::createWindowContainer()
. См. отчет об ошибке и commit. Я собираюсь попробовать скомпилировать 5.1 из исходников и посмотреть, смогу ли я заставить его работать. - person andrewrjones   schedule 09.02.2013