QQmlScriptString Class

The QQmlScriptString class encapsulates a script and its context. 更多...

头: #include <QQmlScriptString>
CMake: find_package(Qt6 REQUIRED COMPONENTS Qml)
target_link_libraries(mytarget PRIVATE Qt6::Qml)
qmake: QT += qml

公共函数

QQmlScriptString ()
QQmlScriptString (const QQmlScriptString & other )
bool booleanLiteral (bool * ok ) const
bool isEmpty () const
bool isNullLiteral () const
bool isUndefinedLiteral () const
qreal numberLiteral (bool * ok ) const
QString stringLiteral () const
bool operator!= (const QQmlScriptString & other ) const
QQmlScriptString & operator= (const QQmlScriptString & other )
bool operator== (const QQmlScriptString & other ) const

详细描述

QQmlScriptString is used to create QObject properties that accept a script "assignment" from QML.

Normally, the following QML would result in a binding being established for the script property; i.e. script would be assigned the value obtained from running myObj.value = Math.max(myValue, 100)

MyType {
    script: myObj.value = Math.max(myValue, 100)
}
					

If instead the property had a type of QQmlScriptString, the script itself – myObj.value = Math.max(myValue, 100) – would be passed to the script property and the class could choose how to handle it. Typically, the class will evaluate the script at some later time using a QQmlExpression .

QQmlExpression expr(scriptString);
expr.evaluate();
					

另请参阅 QQmlExpression .

成员函数文档编制

QQmlScriptString:: QQmlScriptString ()

Constructs an empty instance.

QQmlScriptString:: QQmlScriptString (const QQmlScriptString & other )

拷贝 other .

bool QQmlScriptString:: booleanLiteral ( bool * ok ) const

If the content of the QQmlScriptString is a boolean literal, returns the boolean value and sets ok to true. Otherwise returns false and sets ok 为 false。

bool QQmlScriptString:: isEmpty () const

Returns whether the QQmlScriptString is empty.

bool QQmlScriptString:: isNullLiteral () const

Returns whether the content of the QQmlScriptString null literal.

bool QQmlScriptString:: isUndefinedLiteral () const

Returns whether the content of the QQmlScriptString undefined literal.

qreal QQmlScriptString:: numberLiteral ( bool * ok ) const

If the content of the QQmlScriptString is a number literal, returns that number and sets ok to true. Otherwise returns 0.0 and sets ok 为 false。

QString QQmlScriptString:: stringLiteral () const

If the content of the QQmlScriptString is a string literal, returns that string. Otherwise returns a null QString .

bool QQmlScriptString:: operator!= (const QQmlScriptString & other ) const

返回 true 若此和 other QQmlScriptString 对象不同。

另请参阅 operator== ().

QQmlScriptString &QQmlScriptString:: operator= (const QQmlScriptString & other )

赋值 other to this.

bool QQmlScriptString:: operator== (const QQmlScriptString & other ) const

返回 true 若此和 other QQmlScriptString 对象相等。

另请参阅 operator!= ().