Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
doc_src_properties.cpp
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
3
6 (READ getFunction [WRITE setFunction] |
7 MEMBER memberName [(READ getFunction | WRITE setFunction)])
8 [RESET resetFunction]
9 [NOTIFY notifySignal]
10 [REVISION int | REVISION(int[, int])]
11 [DESIGNABLE bool]
12 [SCRIPTABLE bool]
13 [STORED bool]
14 [USER bool]
15 [BINDABLE bindableProperty]
16 [CONSTANT]
17 [FINAL]
18 [REQUIRED])
20
21
22
23Q_PROPERTY(bool focus READ hasFocus)
24Q_PROPERTY(bool enabled READ isEnabled WRITE setEnabled)
27
28
30Q_PROPERTY(QDate date READ getDate WRITE setDate)
32
33
36QObject *object = button;
37
39object->setProperty("down", true);
41
42
44QObject *object = ...
45const QMetaObject *metaobject = object->metaObject();
46int count = metaobject->propertyCount();
47for (int i=0; i<count; ++i) {
48 QMetaProperty metaproperty = metaobject->property(i);
49 const char *name = metaproperty.name();
50 QVariant value = object->property(name);
51 ...
52}
54
55
57class MyClass : public QObject
58{
61
62public:
63 MyClass(QObject *parent = nullptr);
65
68
70 {
71 if (m_priority == priority)
72 return;
73
74 m_priority = priority;
76 }
78 { return m_priority; }
79
82
83private:
84 Priority m_priority;
85};
87
88
91QObject *object = myinstance;
92
93myinstance->setPriority(MyClass::VeryHigh);
94object->setProperty("priority", "VeryHigh");
96
97
99Q_CLASSINFO("DefaultProperty", "content")
101
103 Q_PROPERTY(QColor color MEMBER m_color NOTIFY colorChanged)
104 Q_PROPERTY(qreal spacing MEMBER m_spacing NOTIFY spacingChanged)
105 Q_PROPERTY(QString text MEMBER m_text NOTIFY textChanged)
106 ...
107signals:
110 void textChanged(const QString &newText);
111
112private:
113 QColor m_color;
114 qreal m_spacing;
115 QString m_text;
117
Priority priority() const
MyClass(QObject *parent=nullptr)
void setPriority(Priority priority)
Priority priority
void priorityChanged(Priority)
The QColor class provides colors based on RGB, HSV or CMYK values.
Definition qcolor.h:31
The QCursor class provides a mouse cursor with an arbitrary shape.
Definition qcursor.h:45
\inmodule QtCore \reentrant
Definition qdatetime.h:29
\inmodule QtCore
const char * name() const
Returns this property's name.
\inmodule QtCore
Definition qobject.h:103
QObject * parent() const
Returns a pointer to the parent object.
Definition qobject.h:346
The QPushButton widget provides a command button.
Definition qpushbutton.h:20
\macro QT_RESTRICTED_CAST_FROM_ASCII
Definition qstring.h:129
\inmodule QtCore
Definition qvariant.h:65
void spacingChanged()
QString text
QDate date
[1]
qreal spacing
QPushButton * button
[2]
for(int i=0;i< count;++i)
button setDown(true)
void colorChanged()
bool focus
[0]
QCursor cursor
type name READ getFunction WRITE setFunction
[0]
void textChanged(const QString &newText)
MyClass * myinstance
[5]
DBusConnection const char DBusError DBusBusType DBusError return DBusConnection DBusHandleMessageFunction void DBusFreeFunction return DBusConnection return DBusConnection return const char DBusError return DBusConnection DBusMessage dbus_uint32_t return DBusConnection dbus_bool_t DBusConnection DBusAddWatchFunction DBusRemoveWatchFunction DBusWatchToggledFunction void DBusFreeFunction return DBusConnection DBusDispatchStatusFunction void DBusFreeFunction DBusTimeout return DBusTimeout return DBusWatch return DBusWatch unsigned int return DBusError const DBusError return const DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessageIter int const void return DBusMessageIter DBusMessageIter return DBusMessageIter void DBusMessageIter void int return DBusMessage DBusMessageIter return DBusMessageIter return DBusMessageIter DBusMessageIter const char const char const char const char return DBusMessage return DBusMessage const char return DBusMessage dbus_bool_t return DBusMessage dbus_uint32_t return DBusMessage void
EGLOutputLayerEXT EGLint EGLAttrib value
[5]
static void unsetCursor(QWindow *w)
GLenum GLenum GLsizei count
GLenum GLenum GLsizei const GLuint GLboolean enabled
GLuint color
[2]
GLenum type
GLuint name
#define Q_ENUM(x)
#define Q_PROPERTY(...)
#define Q_OBJECT
#define Q_CLASSINFO(name, value)
#define signals
#define emit
double qreal
Definition qtypes.h:187
obj metaObject() -> className()
item setCursor(Qt::IBeamCursor)
[1]
QList< QString > MyClass
args<< 1<< 2;QJSValue threeAgain=fun.call(args);QString fileName="helloworld.qs";QFile scriptFile(fileName);if(!scriptFile.open(QIODevice::ReadOnly)) QTextStream stream(&scriptFile);QString contents=stream.readAll();scriptFile.close();myEngine.evaluate(contents, fileName);myEngine.globalObject().setProperty("myNumber", 123);...QJSValue myNumberPlusOne=myEngine.evaluate("myNumber + 1");QJSValue result=myEngine.evaluate(...);if(result.isError()) qDebug()<< "Uncaught exception at line"<< result.property("lineNumber").toInt()<< ":"<< result.toString();QPushButton *button=new QPushButton;QJSValue scriptButton=myEngine.newQObject(button);myEngine.globalObject().setProperty("button", scriptButton);myEngine.evaluate("button.checkable = true");qDebug()<< scriptButton.property("checkable").toBool();scriptButton.property("show").call();QJSEngine engine;QObject *myQObject=new QObject();myQObject- setProperty)("dynamicProperty", 3)
\inmodule QtCore