Есть ли способ сделать окно приложения qml прозрачным ?
Я ищу подробное описание того, как рисовать простые формы с помощью qml, делая окно приложения прозрачным, а также фон. Демонстрация рабочего исходного кода была бы потрясающей.
Я наконец-то нашел простой способ нарисовать пару красных / синих прямоугольников, оставив окно прозрачным.
draw_rectangles.qml
import Qt 4.7
Item {
Rectangle {
opacity: 0.5
color: "red"
width: 100; height: 100
Rectangle {
color: "blue"
x: 50; y: 50; width: 100; height: 100
}
}
}
win.cpp :
#include <QApplication>
#include <QDeclarativeView>
#include <QMainWindow>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QMainWindow window;
QDeclarativeView* v = new QDeclarativeView;
window.setCentralWidget(v);
v->setSource(QUrl::fromLocalFile(("draw_rectangles.qml")));
window.setStyleSheet("background:transparent;");
window.setAttribute(Qt::WA_TranslucentBackground);
window.setWindowFlags(Qt::FramelessWindowHint);
window.show();
return app.exec();
}
win.pro :
TEMPLATE += app
QT += gui declarative
SOURCES += win.cpp
Сохраните эти файлы в том же каталоге и выполните qmake
, а затем make
для компиляции приложения.