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
|
# sets the PROJECT_NAME variable
|
||||||
project(qmlApp)
|
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)
|
set(CMAKE_AUTOMOC ON)
|
||||||
|
|
||||||
@@ -15,6 +18,8 @@ add_executable(${PROJECT_NAME} ${SRC_LIST})
|
|||||||
# links Qt5Core to the project executable
|
# links Qt5Core to the project executable
|
||||||
target_link_libraries(${PROJECT_NAME} Qt5::Widgets Qt5::Qml Qt5::Quick)
|
target_link_libraries(${PROJECT_NAME} Qt5::Widgets Qt5::Qml Qt5::Quick)
|
||||||
|
|
||||||
|
add_subdirectory (mp)
|
||||||
|
|
||||||
add_custom_target(copyQmlFiles ALL
|
add_custom_target(copyQmlFiles ALL
|
||||||
DEPENDS ${PROJECT} ${CMAKE_SOURCE_DIR}/qml
|
DEPENDS ${PROJECT} ${CMAKE_SOURCE_DIR}/qml
|
||||||
COMMAND cmake -E copy_directory ${CMAKE_SOURCE_DIR}/qml ${CMAKE_BINARY_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