MethodNode QML Type

サーバー上のメソッドを呼び出す。詳細...

Import Statement: import QtOpcUa
Since: QtOpcUa 5.12
Inherits:

Node

プロパティ

方法

詳細説明

この QML 要素は、サーバー上のメソッドノードの呼び出しをサポートします。ターゲットオブジェクトのノードIDはobjectNodeId プロパティで指定する必要があります。

import QtOpcUa as QtOpcUa

QtOpcUa.MethodNode {
    nodeId : QtOpcUa.NodeId {
        identifier: "s=Example.Method"
        ns: "Example Namespace"
    }
    objectNodeId : QtOpcUa.NodeId {
        identifier: "s=Example.Object"
        ns: "Example Namespace"
    }
    connection: myConnection
 }

実際の関数呼び出しはシグナルによってトリガされます。

Button {
      text: "Start"
      onClicked: myNode.callMethod
}

またはJavaScript

myNode.callMethod()

プロパティの説明

inputArguments : list<MethodArgument>

サーバー上でメソッドを呼び出すときに使用する引数。

この例では、2 つのダブル引数を持つメソッドを呼び出す方法を示します。

QtOpcUa.MethodNode {
    ...
    inputArguments: [
        QtOpcUa.MethodArgument {
            value: 3
            type: QtOpcUa.Constants.Double
        },
        QtOpcUa.MethodArgument {
            value: 4
            type: QtOpcUa.Constants.Double
        }
    ]
}

callMethodも参照してください


objectNodeId : OpcUaNode

メソッドが呼び出される実際のノードを決定します。これは、相対ノード ID または絶対ノード ID になります。


outputArguments : list<var> [read-only]

メソッド呼び出しからの値を返します。出力引数に応じて、このリストには 0 個以上の値が含まれることがあります。resultStatus は個別にチェックする必要があります。メソッド呼び出しが失敗した場合、リストは空になります。

if (node.status.isGood) {
    // print two arguments
    console.log("Number of return values:", node.outputArguments.length)
    console.log("Return value #1:", node.outputArguments[0])
    console.log("Return value #2:", node.outputArguments[1])
}

callMethod およびresultStatusも参照して ください。


resultStatus : Status [read-only]

最後のメソッド呼び出しのステータス。このプロパティは、メソッド呼び出しが成功したかどうかを判断するためにチェックする必要があります。

Status参照して ください。


type : QOpcUa::Types

サーバによって期待される引数の型を設定します。値のバリアントは、メソッドを呼び出すときにその型に変換されます。この型はサーバのメソッドと正確に一致しなければなりません。

MethodNode::callMethodも参照してください


メソッドのドキュメント

callMethod()

接続されているサーバのメソッドを呼び出します。


© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.