Home · All Classes · Modules · QSS HELP · QSS 案例 · VER007 HOME |
该QDeclarativeExpression类评估的JavaScript在QML上下文。More...
继承QObject。
该QDeclarativeExpression类评估的JavaScript在QML上下文。
例如,给定一个文件main.qml像这样:
import QtQuick 1.0 Item { width: 200; height: 200 }
下面的代码在评估上述QML上下文JavaScript表达式:
QDeclarativeEngine *engine = new QDeclarativeEngine; QDeclarativeComponent component(engine, QUrl.fromLocalFile("main.qml")); QObject *myObject = component.create(); QDeclarativeExpression *expr = new QDeclarativeExpression(engine->rootContext(), myObject, "width * 2"); int result = expr->evaluate().toInt(); // result = 400
创建一个无效的QDeclarativeExpression。
作为表达不会有一个关联的QDeclarativeContext,这将是一个空表达式对象,它的值将永远是无效的QVariant。
该parent的说法,如果不是没有,原因self通过Qt的,而不是PyQt的拥有。
创建QDeclarativeExpression对象,该对象是一个子parent。
该expressionJavaScript的将在被执行ctxt QDeclarativeContext。如果指定,scope对象的属性也将在范围表达式的执行过程中。
清除任何表达错误。调用hasError( )以下,这将返回False 。
See also hasError()和error( ) 。
返回QDeclarativeContext这种表达是与,或0相关的,如果没有关联关系或QDeclarativeContext已被摧毁。
返回QDeclarativeEngine这种表达是与,或0相关的,如果没有关联关系或QDeclarativeEngine已被摧毁。
返回从最后一次调用的任何错误evaluate( ) 。如果没有错误,将返回一个无效的QDeclarativeError实例。
See also hasError()和clearError( ) 。
Evaulates表达式,返回了评价的结果,或无效QVariant如果表达式是无效的或有错误。
valueIsUndefined被设置为True,如果表达导致一个未定义的值。
See also hasError()和error( ) 。
返回表达式的字符串。
See also setExpression( ) 。
返回True如果到最后通话evaluate( )导致错误,否则为False 。
See also error()和clearError( ) 。
返回此表达式的源文件中的行号。源位置必须通过调用预先设置setSourceLocation( ) 。
返回True如果valueChanged( )信号被发射时,表达式的评估值的变化。
See also setNotifyOnValueChanged( ) 。
返回表达式的范围对象,如果提供的话,否则为0 。
除了由表达式的提供数据QDeclarativeContext,范围对象的属性也在范围内表达的评价。
表达式设置为expression。
See also expression( ) 。
设置是否valueChanged( )信号被发射时,表达式的评估值的变化。
If notifyOnChange是真的,QDeclarativeExpression将监测参与式的评估性能,并放出QDeclarativeExpression.valueChanged( ),如果他们已经改变。这使得应用程序,以确保与表达式的结果相关联的任何值保持在最新状态。
If notifyOnChange为假(默认),QDeclarativeExpression不会montitor涉及的表达式的求值的属性,并QDeclarativeExpression.valueChanged()将永远不会被发射。这是更有效的,如果应用程序想表达的是“一次性”的评价。
See also notifyOnValueChanged( ) 。
设置这个表达式的位置line的url。此信息被用于由脚本引擎。
返回此表达式的源文件的URL 。源位置必须通过调用预先设置setSourceLocation( ) 。
这是该信号的默认超载。
每次发射从最后一次被计算的表达式值的变化。表达式必须被评估至少一次(通过调用QDeclarativeExpression.evaluate())这个信号之前将被发射。
PyQt 4.10.3 for X11 | Copyright © Riverbank Computing Ltd and Nokia 2012 | Qt 4.8.5 |