mp/ Example of setting QML property from C++
This commit is contained in:
+6
-1
@@ -1,7 +1,10 @@
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
|
||||
# sets the PROJECT_NAME variable
|
||||
project(qmlApp)
|
||||
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
add_definitions(-std=c++14)
|
||||
set(CMAKE_CXX_FLAGS "${CMAXE_CXX_FLAGS} -Wall")
|
||||
|
||||
set(CMAKE_AUTOMOC ON)
|
||||
|
||||
@@ -15,6 +18,8 @@ add_executable(${PROJECT_NAME} ${SRC_LIST})
|
||||
# links Qt5Core to the project executable
|
||||
target_link_libraries(${PROJECT_NAME} Qt5::Widgets Qt5::Qml Qt5::Quick)
|
||||
|
||||
add_subdirectory (mp)
|
||||
|
||||
add_custom_target(copyQmlFiles ALL
|
||||
DEPENDS ${PROJECT} ${CMAKE_SOURCE_DIR}/qml
|
||||
COMMAND cmake -E copy_directory ${CMAKE_SOURCE_DIR}/qml ${CMAKE_BINARY_DIR}/qml
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
# sets the PROJECT_NAME variable
|
||||
project(mpApp)
|
||||
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
|
||||
set(CMAKE_AUTOMOC ON)
|
||||
|
||||
find_package(Qt5 COMPONENTS Qml Quick REQUIRED)
|
||||
|
||||
set(SRC_LIST mp.cpp)
|
||||
|
||||
# add an executable based on the project name and source list
|
||||
add_executable(${PROJECT_NAME} ${SRC_LIST})
|
||||
|
||||
# links Qt5Core to the project executable
|
||||
target_link_libraries(${PROJECT_NAME} Qt5::Qml Qt5::Quick)
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
/***
|
||||
Simple example showing how to set properties.
|
||||
item->setWidth (300);
|
||||
rect->setProperty ("color", "red");
|
||||
|
||||
1/17/17 -- Tal Lancaster
|
||||
***/
|
||||
#include <QGuiApplication>
|
||||
#include <QQuickView>
|
||||
#include <QtQuick>
|
||||
#include <QtQml>
|
||||
#include <QtCore>
|
||||
|
||||
int main (int argc, char* argv[])
|
||||
{
|
||||
|
||||
QGuiApplication q_app (argc, argv);
|
||||
|
||||
// Using QQuickView
|
||||
QQuickView view;
|
||||
view.setSource(QUrl::fromLocalFile("../qml/itemRect.qml"));
|
||||
view.show();
|
||||
QQuickItem* item {view.rootObject () };
|
||||
item->setWidth (300);
|
||||
|
||||
QObject* rect = item->findChild<QObject*> ("rect");
|
||||
if (rect) {
|
||||
rect->setProperty ("color", "red");
|
||||
}
|
||||
|
||||
|
||||
return q_app.exec ();
|
||||
}
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
import QtQuick 2.0
|
||||
|
||||
Item {
|
||||
width: 100; height: 100
|
||||
|
||||
Rectangle {
|
||||
anchors.fill: parent
|
||||
objectName: "rect"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user