Qt QML Type

Qt の便利な列挙型と関数を持つグローバルオブジェクトを提供します。詳細...

Import Statement: import QtQml

プロパティ

メソッド

  • string QT_TRANSLATE_NOOP(string context, string sourceText, string disambiguation)
  • string QT_TRID_NOOP(string id)
  • string QT_TR_NOOP(string sourceText, string disambiguation)
  • color alpha(color baseColor, real value)
  • string atob(data)
  • binding(function)
  • string btoa(data)
  • callLater(function)
  • callLater(function, argument1, argument2, ...)
  • color color(string name)
  • color colorEqual(color lhs, string rhs)
  • Component createComponent(url url, enumeration mode, QtObject parent)
  • Component createComponent(string moduleUri, string typeName, enumeration mode, QtObject parent) (since 6.5)
  • object createQmlObject(string qml, object parent, string filepath)
  • color darker(color baseColor, real factor)
  • exit(int retCode)
  • font font(object fontSpecifier)
  • list<string> fontFamilies()
  • string formatDate(datetime date, variant format, variant localeFormatOption)
  • string formatDateTime(datetime dateTime, variant format, variant localeFormatOption)
  • string formatTime(datetime time, variant format, variant localeFormatOption)
  • void gc()
  • color hsla(real hue, real saturation, real lightness, real alpha)
  • color hsva(real hue, real saturation, real value, real alpha)
  • bool isQtObject(object)
  • color lighter(color baseColor, real factor)
  • locale(name)
  • string md5(data)
  • matrix4x4 matrix4x4()
  • matrix4x4 matrix4x4(var values)
  • matrix4x4 matrix4x4(real m11, real m12, real m13, real m14, real m21, real m22, real m23, real m24, real m31, real m32, real m33, real m34, real m41, real m42, real m43, real m44)
  • bool openUrlExternally(url target)
  • point point(real x, real y)
  • string qsTr(string sourceText, string disambiguation, int n)
  • string qsTrId(string id, int n)
  • string qsTranslate(string context, string sourceText, string disambiguation, int n)
  • quaternion quaternion(real scalar, real x, real y, real z)
  • quit()
  • rect rect(real x, real y, real width, real height)
  • url resolvedUrl(url url)
  • url resolvedUrl(url url, object context)
  • color rgba(real red, real green, real blue, real alpha)
  • size size(real width, real height)
  • color tint(color baseColor, color tintColor)
  • url url(url url)
  • vector2d vector2d(real x, real y)
  • vector3d vector3d(real x, real y, real z)
  • vector4d vector4d(real x, real y, real z, real w)

詳細説明

Qt は、ユーティリティ関数、プロパティ、列挙型を提供するシングルトン型です。この型の使用例を示します:

import QtQuick 2.0

Text {
    color: Qt.rgba(1, 0, 0, 1)
    text: Qt.md5("hello, world")
}

列挙型

Qt オブジェクトには、Qt Namespace で利用可能な列挙値が含まれています。例えば、Qt::LeftButtonQt::RightButton の列挙値には、Qt.LeftButtonQt.RightButton としてアクセスできます。

Qtオブジェクトには、特定のデータ型のオブジェクトを作成するためのヘルパー関数も含まれています。これは主に、ある項目のプロパティを設定するときに便利です:

QtQuick モジュールがインポートされている場合、特定のデータ型のオブジェクトを作成するための以下のヘルパー関数も、クライアントが使用できます:

日付/時刻フォーマット

Qt オブジェクトには、QDateTimeQDateQTime の値をフォーマットするための関数がいくつか含まれています。

フォーマットの仕様についてはQt.formatDateTime を参照してください。

動的なオブジェクトの作成

グローバルオブジェクトの以下の関数を使うと、ファイルや文字列から動的に QML オブジェクトを作成することができます。この関数の概要については、JavaScriptによる動的なQMLオブジェクトの生成を参照してください。

その他の関数

以下の関数も Qt オブジェクトにあります。

プロパティ・ドキュメンテーション

application : Application

application オブジェクトは、多くの QML コンポーネントが共有するグローバルなアプリケーション状態のプロパティへのアクセスを提供します。

これはApplication シングルトンと同じです。

以下の例では、application オブジェクトを使って、アプリケーションが現在アクティブかどうかを示しています:

import QtQuick

Rectangle {
    width: 300; height: 55
    color: Qt.application.active ? "white" : "lightgray"
    Text {
        text: "Application " + (Qt.application.active ? "active" : "inactive")
        opacity: Qt.application.active ? 1.0 : 0.5
        anchors.centerIn: parent
    }
}

注意: QGuiApplication を使わずにQMLを使用する場合、以下のプロパティは未定義となります:

  • application.active
  • application.active
  • application.layoutDirection
  • application.font

inputMethod : InputMethod

InputMethod シングルトンと同じです。

inputMethod オブジェクトは、アプリケーションのQInputMethod オブジェクトとそのすべてのプロパティとスロットにアクセスできます。詳細はQInputMethod のドキュメントを参照してください。


platform : object

platform オブジェクトは、基盤となるプラットフォームに関する情報を提供します。

そのプロパティは次のとおりです:

platform.osこの読み取り専用プロパティには、オペレーティング・システムの名前が含まれています。

取り得る値は次のとおりです:

  • "android" - Android
  • "ios" - iOS
  • "tvos" - tvOS
  • "visionos" - ビジョンOS
  • "linux" - Linux
  • "osx" - macOS
  • "qnx" - QNX(Qt 5.9.3 以降)
  • "unix" - その他のUnixベースOS
  • "windows" - Windows
  • "wasm" - WebAssembly

注意: macOS でのプロパティの値は、Apple の命名規則に関係なく "osx" です。Qt 7 では、返される値は "macos" に更新されます。

platform.pluginNameこれは、QGuiApplication::platformName() によって返される、QGuiApplication インスタンスに設定されたプラットフォームの名前です。

styleHints : object

styleHints オブジェクトは、プラットフォーム固有のスタイルヒントと設定を提供します。詳細はQStyleHints のドキュメントを参照してください。

Qt Quick Compiler などのツールでは、こちらの方がより良い型情報を提供するため、代わりにApplication::styleHints から StyleHints にアクセスする必要があります。

注意: styleHints オブジェクトは、Qt Quick モジュールを使用している場合のみ利用可能です。


uiLanguage : string

uiLanguage は、ユーザーインターフェイスの文字列翻訳に使用する言語名を保持します。C++ではQQmlEngine::uiLanguageプロパティとして公開されています。

自由に値を設定し、バインディングで使用することができます。アプリケーションにトランスレータをインストールした後で設定することをお勧めします。慣習上、空文字列はソースコードで使用されている言語からの翻訳が意図されていないことを意味します。

QQmlApplicationEngine を使用していて値が変更された場合は、QQmlEngine::retranslate() が呼び出されます。


メソッドのドキュメント

callLater(function)

callLater(function, argument1, argument2, ...)

関数やシグナルへの冗長な呼び出しを排除するには、この関数を使用します。

Qt.callLater() の第一引数として渡された関数は、QML エンジンがイベントループに戻ると、 後で呼び出されます。

この関数が同じ関数を第一引数として複数回連続して呼び出された場合、その関数は一度だけ呼び出されます。

例えば

import QtQuick

Rectangle {
    width: 480
    height: 320

    property int callsToUpdateMinimumWidth: 0
    property bool optimize: true

    property int currentTextModel: 0
    property var columnTexts: [
        ["Click on either", "rectangle above", "and note how the counter", "below updates", "significantly faster using the", "regular (non-optimized)", "implementation"],
        ["The width", "of this column", "is", "no wider than the", "widest item"],
        ["Note how using Qt.callLater()", "the minimum width is", "calculated a bare-minimum", "number", "of times"]
    ]

    Text {
        x: 20; y: 280
        text: "Times minimum width has been calculated: " + callsToUpdateMinimumWidth
    }

    Row {
        y: 25; spacing: 30; anchors.horizontalCenter: parent.horizontalCenter
        Rectangle {
            width: 200; height:  50; color: "lightgreen"
            Text { text: "Optimized behavior\nusing Qt.callLater()"; anchors.centerIn: parent }
            MouseArea { anchors.fill: parent; onClicked: { optimize = true; currentTextModel++ } }
        }
        Rectangle {
            width: 200; height:  50; color: "lightblue"
            Text { text: "Regular behavior"; anchors.centerIn: parent}
            MouseArea { anchors.fill: parent; onClicked: { optimize = false; currentTextModel++ } }
        }
    }

    Column {
        id: column
        anchors.centerIn: parent

        onChildrenChanged: optimize ? Qt.callLater(updateMinimumWidth) : updateMinimumWidth()

        property int widestChild
        function updateMinimumWidth() {
            callsToUpdateMinimumWidth++
            var w = 0;
            for (var i in children) {
                var child = children[i];
                if (child.implicitWidth > w) {
                    w = child.implicitWidth;
                }
            }

            widestChild = w;
        }

        Repeater {
            id: repeater
            model: columnTexts[currentTextModel%3]
            delegate: Text {
                color: "white"
                text: modelData
                width: column.widestChild
                horizontalAlignment: Text.Center
                Rectangle { anchors.fill: parent; z: -1; color: index%2 ? "gray" : "darkgray" }
            }
        }
    }
}

Qt.callLater() に渡された追加の引数は、呼び出された関数に渡されます。冗長な呼び出しが排除された場合、引数の最後のセットだけが関数に渡されることに注意してください。


string QT_TRANSLATE_NOOP(string context, string sourceText, string disambiguation)

sourceText 与えられたcontext の動的変換のためにsourceText をマークします。

同じsourceText が同じ翻訳コンテキスト内で異なる役割で使用される場合、disambiguation に識別文字列を追加で渡すことができる。

sourceText を返します。

QT_TRANSLATE_NOOP は、動的翻訳関数qsTr() およびqsTranslate() と組み合わせて使用します。QT_TRANSLATE_NOOP は、翻訳が必要な文字列であることを識別します(したがって、lupdate で識別できます)が、実際の翻訳は動的関数に委ねられます。

Item {
    property string greeting: QT_TRANSLATE_NOOP("CustomContext", "hello")

    Text { text: qsTranslate("CustomContext", greeting) }
}

Qt による国際化」も参照してください


string QT_TRID_NOOP(string id)

動的翻訳のためにid をマークします。

id を返します。

QT_TRID_NOOP は、動的翻訳関数qsTrId() と組み合わせて使用します。QT_TRID_NOOP は、文字列を翻訳が必要なものとして識別しますが (lupdate で識別できるようにします)、実際の翻訳はqsTrId() に任せます。

Item {
    property string greetingId: QT_TRID_NOOP("hello_id")

    Text { text: qsTrId(greetingId) }
}

qsTrId() およびInternationalization with Qtも参照してください


string QT_TR_NOOP(string sourceText, string disambiguation)

sourceText つまり、保存されているsourceText は変更されません。

つまり、保存されているsourceText は変更されません。 同じ が同じ翻訳コンテキスト内で異なる役割で使用される場合、disambiguation に識別文字列を追加で渡すことができます。

sourceText を返します。

QT_TR_NOOP は、動的翻訳関数qsTr() およびqsTranslate() と組み合わせて使用します。QT_TR_NOOP は、文字列を翻訳が必要なものとして識別します(したがって、lupdate で識別できます)が、実際の翻訳は動的関数に委ねられます。

Item {
    property string greeting: QT_TR_NOOP("hello")

    Text { text: qsTr(greeting) }
}

Qt による国際化」も参照してください


color alpha(color baseColor, real value)

value のアルファ値でbaseColor を返します。

value は 0(完全に透明)から 1(完全に不透明)までの実数です。


string atob(data)

ASCII からバイナリへ - この関数は、base64 エンコードされたdata 文字列をデコードして返します。


binding(function)

プロパテ ィ バ イ ンデ ィ ン グ を表す JavaScript オブジ ェ ク ト を、 バ イ ンデ ィ ン グ を評価す るfunction と と も に返 し ます。

こ の関数の主な使用例は 2 つあ り ます : 1 つ目は、 JavaScript コ ー ド か ら 強制的にプ ロ パテ ィ バ イ ンデ ィ ン グ を適用す る こ と です:

Item {
    property bool someCondition: true
    property int edgePosition

    Component.onCompleted: {
        if (someCondition == true) {
            // bind to the result of the binding expression passed to Qt.binding()
            edgePosition = Qt.binding(function() { return x + width })
        }
    }
}

もうひとつは、動的に構築されたオブジェクトのプロパティ値を初期化するときにプロパティ・バインディングを適用する場合です(Component.createObject ()またはLoader.setSource ()を使用します)。

例えば、DynamicTextコンポーネントが存在すると仮定します:

import QtQuick

Text {
    id: textElement
    width: 200
    height: 200
    text: "Default text"
    property string dynamicText: "Dynamic text"
    onTextChanged: console.log(text)
}

から出力されます:

Item {
    id: root
    property string dynamicText: "Root text"

    Component.onCompleted: {
        var c = Qt.createComponent("DynamicText.qml")

        var obj1 = c.createObject(root, { 'text': Qt.binding(function() { return dynamicText + ' extra text' }) })
        root.dynamicText = "Modified root text"

        var obj2 = c.createObject(root, { 'text': Qt.binding(function() { return this.dynamicText + ' extra text' }) })
        obj2.dynamicText = "Modified dynamic text"
    }
}

と from:

Item {
    id: root
    property string dynamicText: "Root text"

    Loader {
        id: loaderOne
        onLoaded: root.dynamicText = "Modified root text"
    }

    Loader {
        id: loaderTwo
        onLoaded: item.dynamicText = "Modified dynamic text"
    }

    Component.onCompleted: {
        loaderOne.setSource("DynamicText.qml", { 'text': Qt.binding(function() { return dynamicText + ' extra text' }) })
        loaderTwo.setSource("DynamicText.qml", { 'text': Qt.binding(function() { return this.dynamicText + ' extra text' }) })
    }
}

の両方が出力されます:

Root text extra text
Modified root text extra text
Dynamic text extra text
Modified dynamic text extra text

この関数は、結果が var プロパティにバインドされた配列に格納される場合を除き、プロパティ・バインディング宣言(バインディング宣言およびバインディング割り当てに関するドキュメントを参照)では使用できません。

Item {
    width: 50
    property var storedBindings: [ Qt.binding(function() { return x + width }) ] // stored
    property int a: Qt.binding(function() { return x + width }) // error!
    property int b

    Component.onCompleted: {
        b = storedBindings[0] // causes binding assignment
    }
}

string btoa(data)

Binary to ASCII - こ の関数は、data の base64 エン コ ーデ ィ ン グ を返 し ます。


color color(string name)

与えられたname に対応する色(すなわち、赤または #ff0000)を返します。そのような色がない場合はnull が返されます。


color colorEqual(color lhs, string rhs)

lhsrhs の両方が等しい色値を返す場合はtrue を返します。両方の引数には、色値か文字列値を指定することができます。文字列値を与え る と き は、color の値型について述べた よ う に、 色へ変換で き る も のでなければな り ません。


Component createComponent(url url, enumeration mode, QtObject parent)

指定されたurl にある QML ファイルを使用して作成されたComponent オブジェクト、または空文字列が指定された場合はnull を返します。

返されたコンポーネントのComponent::status プロパティは、コンポーネントが正常に作成されたかどうかを示します。ステータスがComponent.Error の場合、エラーの説明はComponent::errorString() を参照。

オプションのパラメータmodeComponent.Asynchronous に設定されている場合、コンポーネントはバックグラウンド・スレッドでロードされます。ロード中は、Component::status プロパティはComponent.Loading になります。コンポーネントのロードに成功した場合はステータスがComponent.Ready に変わり、ロードに失敗した場合はComponent.Error に変わります。このパラメータを省略した場合のデフォルトはComponent.PreferSynchronous である。

modeComponent.PreferSynchronous に設定されている場合、Qt はコンポーネントを同期的にロードしようと試みますが、必要に応じて非同期的にロードしてしまうことがあります。非同期ロードを引き起こす可能性のあるシナリオには、以下のようなものがありますが、これらに限定されません:

  • URLがネットワークリソースを参照している。
  • 非同期にロードされる別のコンポーネントの結果としてコンポーネントが作成される。

オプションのparent パラメータが指定された場合、作成されたComponent オブジェクトの親となるオブジェクトを参照する必要があります。モードが渡されなかった場合、これは第2引数になります。

返されたコンポーネントに対してComponent.createObject() を呼び出すと、そのコンポーネントのオブジェクト・インスタンスが生成される。

例えば

import QtQuick

Item {
    id: container
    width: 300; height: 300

    function loadButton() {
        var component = Qt.createComponent("Button.qml");
        if (component.status == Component.Ready) {
            var button = component.createObject(container);
            button.color = "red";
        }
    }

    Component.onCompleted: loadButton()
}

この関数の使い方については、JavaScriptからの動的なQMLオブジェクト生成を参照してください。

ファイルではなく)任意の QML 文字列から QML オブジェクトを生成するには、Qt.createQmlObject() を使用します。


[since 6.5] Component createComponent(string moduleUri, string typeName, enumeration mode, QtObject parent)

これはオーバーロードされた関数です。

moduleUritypeName で指定された型のComponent オブジェクトを返します。

import QtQml
QtObject {
    id: root
    property Component myComponent: Qt.createComponent("QtQuick", "Rectangle", Component.Asynchronous, root)
}

このオーバーロード関数はurl をベースとしたバージョンと同じように動作しますが、 URLを持たない型(例えばQML_ELEMENT で登録されたC++型)のインスタンス化にも使用できます。

注: Component.Asynchronous を渡しても効果がない場合があります:

  • 型がC++で実装されている。
  • 型がインライン・コンポーネントである。

オプションのparent パラメータが指定された場合、作成されるComponent オブジェクトの親となるオブジェクトを参照する必要があります。モードが渡されなかった場合、これは第2引数になります。

このメソッドは Qt 6.5 で導入されました。


object createQmlObject(string qml, object parent, string filepath)

与えられたqml 文字列から作成された新しいオブジェクトを返します。このオブジェクトは指定されたparent を持ちますが、オブジェクトの作成にエラーがあった場合はnull を持ちます。

filepath が指定された場合、作成されたオブジェクトのエラー報告に使用されます。

例(parentItem は既存の QML アイテムの ID):

const newObject = Qt.createQmlObject(`
    import QtQuick

    Rectangle {
        color: "red"
        width: 20
        height: 20
    }
    `,
    parentItem,
    "myDynamicSnippet"
);

エラーの場合、QQmlError オブジェクトが投げられます。このオブジェクトにはさらにqmlErrors というプロパティがあり、これは発生したエラーの配列です。この配列の各オブジェクトはlineNumbercolumnNumberfileNamemessage というメンバーを持っています。例えば、上記のスニペットでcolorのスペルを「colro」と間違えていた場合、配列には以下のようなオブジェクトが含まれる:{ "lineNumber" : 1, "columnNumber" : 32, "fileName" : "dynamicSnippet1", "message" : "Cannot assign to non-existent property "colro""}。

注意: この関数は即座に返されるため、qml の文字列が新しいコンポーネント(つまり、まだロードされていない外部QMLファイル)をロードしている場合、動作しない可能性があります。そのような場合は、代わりにQt.createComponent() を使用してください。

警告 この関数は呼び出されるたびに渡された QML 文字列をコンパイルしなければならないため、非常に時間がかかります。さらに、プログラム的に QML コードを構築する場合、無効な QML を生成するのは非常に簡単です。文字列操作によって新たなコンポーネントを生成するよりも、QMLコンポーネントを別のファイルとして保持し、プロパティやメソッドを追加して動作をカスタマイズする方がずっとよいでしょう。

この関数の使い方については、JavaScriptからの動的なQMLオブジェクト作成を参照してください。


color darker(color baseColor, real factor)

baseColor よりも暗い色を、指定したfactor の値だけ返します。

factor が 1.0 より大きい場合、この関数はより暗い色を返します。factorを3.0に設定すると、明るさが3分の1の色が返されます。factor が 1.0 より小さい場合、返される色は明るくなりますが、この目的には Qt.lighter() 関数を使用することをお勧めします。係数が 0 または負の場合、戻り値は指定されません。

この関数は、現在の RGB カラーを HSV に変換し、値(V)成分を factor で割って RGB に戻します。

factor が与えられない場合、baseColor (係数 2.0)より 50% 暗い色を返します。


exit(int retCode)

この関数はQQmlEngine::exit(int) シグナルを発します。qmlツール内では、指定されたリターン・コード(retCode)でランチャー・アプリケーションを終了させます。このメソッドが呼び出されたときに指定されたリターン・コードでイベント・ループから抜けるには、C++アプリケーションはQQmlEngine::exit(int) シグナルをQCoreApplication::exit(int) スロットに接続します。

quit()も参照


font font(object fontSpecifier)

fontSpecifier オブジェクトで指定されたプロパティを持つフォント、またはそれに最も近いフォントを返します。fontSpecifier オブジェクトは、有効なキーがfont タイプのサブプロパティ名であり、値が各サブプロパティに対して有効な値である、キーと値のペアを含んでいる必要があります。無効なキーは無視されます。


list<string> fontFamilies()

フォントファミリ アプリケーションが利用可能なフォントファミリの一覧を返します。


string formatDate(datetime date, variant format, variant localeFormatOption)

date の文字列表現 (オプシ ョ ンでformat を用いて組版 さ れた も の) を返 し ます。

date パ ラ メ タ は、 JavaScript のDate オブジ ェ ク ト 、date プロパテ ィ 、QDateQDateTime 値のいずれかです。format およびlocaleFormatOption パラメータは、Qt.formatDateTime() で説明されているように、可能なフォーマット値のいずれかである。

format が指定されていない場合、date はデフォルトのロケールを使用してLocale.ShortFormat でフォーマットされます。

Localeも参照のこと


string formatDateTime(datetime dateTime, variant format, variant localeFormatOption)

formatlocaleFormatOption を使ってフォーマットされたdateTime の文字列表現を返します。

dateTime パラメータには、JavaScript のDate オブジェクト、date プロパティ、QDateQTimeQDateTime の値を指定することができます。

format が提供されない場合、dateTime はデフォルトロケールを用いてLocale.ShortFormat でフォーマットされます。そうでない場合は、format のいずれかを指定する:

  • Qt.RFC2822DateQt.ISODate など、Qt::DateFormat の列挙値のいずれか。
  • 返される文字列の書式を指定する文字列。
  • locale オブジェクト。

format でロケールオブジェクトが指定されている場合、dateTimeはQLocale::toString でフォーマットされる。 この場合、localeFormatOptionQLocale::FormatType 型の値を保持して、さらにフォーマットを調整することができる。何も指定されていない場合は、Locale.ShortFormat

format 、書式文字列を指定する場合は、以下の式を使用して日付を指定する:

出力
d先頭のゼロを除いた数字としての日(1~31)
ddゼロを先頭に持つ数値としての曜日(01~31)
ddd地域化された曜日名の省略形 (例 'Mon' から 'Sun' まで)。QDate::shortDayName() を使用します。
dddd地域化された長い曜日名 (例 'Monday' から 'Qt::Sunday')。QDate::longDayName() を使用します。
M先頭のゼロを除いた月 (1-12)
MMゼロを先頭に含む月 (01-12)
MMM地域化された月名の省略形 (例 'Jan' から 'Dec' まで)。QDate::shortMonthName() を使用します。
MMMM地域化された長い月名 (例 'January' から 'December' まで)。QDate::longMonthName() を使用します。
yy二桁の年 (00-99)
yyyy四桁の数字による年

さらに、以下の式を使用して時刻を指定することができます:

出力
h先頭のゼロを除いた時間(AM/PM表示の場合は0~23または1~12)
hhゼロを先頭に持つ時(AM/PM表示の場合は00~23または01~12)
m分(先頭ゼロなし)(0~59
mmゼロを先頭に持つ分(00~59)
sゼロを先頭に持たない秒(0~59)
ssゼロを先頭に持つ秒(00~59)
z先頭ゼロなしのミリ秒(0~999)
zzz先頭がゼロのミリ秒(000~999)
APAM/PM表示を使用。APは"AM "または "PM "に置き換えられる。
APapは"am "または "pm "に置き換えられる。
tタイムゾーン表示を含む。

その他の入力文字は無視される。一重引用符で囲まれた文字列はテキストとして扱われ、式としては使用されない。連続する2つの一重引用符("'")は、出力では一重引用符に置き換えられる。

例えば、次のような日時値が指定されたとする:

// 21 May 2001 14:13:09
var dateTime = new Date(2001, 5, 21, 14, 13, 09)

このdateTime の値を、Qt.formatDateTime()Qt.formatDate ()またはQt.formatTime ()に、以下のformat の値とともに渡すと、以下のような結果が得られる:

フォーマット結果
"dd.MM.yyyy"21.05.2001
"ddd MMMM d yy"2001年5月21日火曜日
"hh:mm:ss.zzz"14:13:09.042
"h:m:s ap"午後 2 時 13 分 9 秒

Localeも参照のこと


string formatTime(datetime time, variant format, variant localeFormatOption)

time の文字列表現を返します。オプションで、format を使ってフォーマットされ、指定された場合はlocaleFormatOption も返します。

time パラメータには、JavaScript のDate オブジェクト、QTime 、またはQDateTime の値を指定することができます。formatlocaleFormatOption パラメータは、Qt.formatDateTime()で説明されているように、可能なフォーマット 値のいずれかである。

format が指定されていない場合、time はデフォルトのロケールを使用してLocale.ShortFormat でフォーマットされます。

Localeも参照のこと


void gc()

ガベージ・コレクタを実行する。

これはQJSEngine::collectGarbage() を呼び出すのと同じである。

ガベージコレクションも参照


color hsla(real hue, real saturation, real lightness, real alpha)

指定したhue,saturation,lightness,alpha 成分を持つ色を返します。すべての構成要素は、0 から 1 の範囲内である必要があります(包含)。


color hsva(real hue, real saturation, real value, real alpha)

指定したhue,saturation,value,alpha 成分を持つ色を返します。すべての構成要素は 0 ~ 1 の範囲内にあ る 必要があ り ます (包含)。


bool isQtObject(object)

object が Qt または QML オブジェクトへの有効な参照である場合はtrue を、そうでない場合はfalse を返します。


color lighter(color baseColor, real factor)

baseColor よりも明るい色を、指定されたfactor の値だけ返します。

factor が 1.0 より大きい場合、この関数はより明るい色を返します。factorを1.5に設定すると、50%明るい色を返します。factorが1.0より小さい場合、返される色は暗くなりますが、この目的にはQt.darker()関数を使用することをお勧めします。係数が 0 または負の場合、戻り値は指定されません。

この関数は、現在の RGB カラーを HSV に変換し、値(V)成分に係数を掛けて、色を RGB に戻します。

factor が与えられない場合は、baseColor より 50% 明るい色(factor 1.5)を返します。


locale(name)

指定されたname を持つロケールを表す JS オブジェクトを返します。このオブジェクトは "language[_territory][.codeset][@modifier]" あるいは "C" の形式を持ちます:

  • language は、小文字の2文字のISO 639言語コードです、
  • territory は大文字の2文字のISO 3166国コードで
  • codeset と は無視される。modifier

文字列がロケールの書式に違反していたり、languageが有効なISO 369コードでない場合は、代わりに "C "ロケールが使用される。countryが存在しないか、有効なISO 3166コードでない場合は、指定された言語に最も適した国が選択される。

Localeも参照


string md5(data)

data の md5 ハッシュを 16 進文字列で返します。


matrix4x4 matrix4x4()

identity matrix4x4 を返します。


matrix4x4 matrix4x4(var values)

指定されたvalues を含む matrix4x4 を返します。values は、16 個のエントリを持つ JavaScript 配列であることが期待されます。

配列の添字は、以下のように行列の位置に対応します:

0123
4567
891011
12131415

matrix4x4 matrix4x4(real m11, real m12, real m13, real m14, real m21, real m22, real m23, real m24, real m31, real m32, real m33, real m34, real m41, real m42, real m43, real m44)

指定された値を持つ 4x4 行列を返します。

引数は行列内の位置に対応する:

m11m12m13m14
m21m22m23m24
m31m32m33m34
m41m42m43m44

bool openUrlExternally(url target)

ユーザーのデスクトップ環境設定に基づいて、指定されたtarget urlを外部アプリケーションで開こうとする。成功した場合はtrue を、失敗した場合はfalse を返す。

警告: 警告:戻り値true は、外部アプリケーションで URL を開くよう、アプリケーションがオペレーティングシステムに要求することに成功したことを示す。外部アプリケーションはまだ起動に失敗したり、要求された URL を開くことができないかもしれない。この結果はアプリケーションには報告されない。


point point(real x, real y)

xy 座標を指定して点を返す。


string qsTr(string sourceText, string disambiguation, int n)

disambiguation 文字列と、複数形を含む文字列の場合はn の値に基づいて、sourceText の翻訳バージョンを返します。そうでない場合は、適切な翻訳文字列がない場合はsourceText 自身を返します。

Text { text: qsTr("hello") }

例:同じsourceText が同じ翻訳コンテキスト内で異なる役割で使用される場合、disambiguation に追加の識別文字列を渡すことができます。詳細と例については、Disambiguate Identical Textを参照してください。

Qt による国際化」と「翻訳用ソースコードの記述」も参照して ください。


string qsTrId(string id, int n)

id で識別される翻訳文字列を返します。一致する文字列が見つからない場合は、id自体が返されます。こ れは、 通常の条件下では発生す る べ き ではあ り ません。

n >= 0 の場合、結果の文字列内の%n の出現はすべて、n の 10 進表現に置き換えられます。 さらに、n の値によって、翻訳テキストが変わることがあります。

Text { text: qsTrId("hello_id") }

のようなソース文字列テンプレートを指定することができます:

//% <string>

または

\begincomment% <string> \endcomment

Text {
    //% "hello"
    text: qsTrId("hello_id")
}

この関数で使用するのに適したバイナリ翻訳(QM)ファイルを作成するには、lrelease ツールに-idbased オプションを渡す必要があります。

QT_TRID_NOOP() およびInternationalization with Qtも参照してください


string qsTranslate(string context, string sourceText, string disambiguation, int n)

sourceText 指定されたcontext 内のsourceText の翻訳バージョンを返します。オプションとして、disambiguation 文字列と、複数形を含む文字列のためのn の値に基づいています。

同じsourceText が同じ翻訳context 内で異なる役割で使用される場合、disambiguation のために追加の識別文字列を渡すことができます。

Text { text: qsTranslate("CustomContext", "hello") }

Qt による国際化も参照してください


quaternion quaternion(real scalar, real x, real y, real z)

指定されたscalar,x,y,z の値を持つクォータニオンを返します。


quit()

この関数はQQmlEngine::quit() シグナルを発生させます。このメソッドが呼ばれたときにC++アプリケーションを終了するには、QQmlEngine::quit() シグナルをQCoreApplication::quit() スロットに接続します。

exit()も参照


rect rect(real x, real y, real width, real height)

x,y と、指定されたwidthheight を左上隅とする矩形を返す。


url resolvedUrl(url url)

呼び出し元のURLに相対的に解決されたurl を返す。

呼び出し元が存在しない場合や、呼び出し元が QML コンテキストに関連付け られていない場合は、QML エンジンのベース URL に対して解決されたurl を返す。QMLエンジンにベースURLがない場合は、url を返す。

url()も参照


url resolvedUrl(url url, object context)

context の QML コンテキストの URL に相対的に解決されたurl を返す。context が QML コンテキストと関連付けられていない場合、QML エンジンのベース URL に相対的に解決されたurl を返す。QMLエンジンにベースURLがない場合はurl を返す。

url()も参照してください


color rgba(real red, real green, real blue, real alpha)

red,green,blue,alpha の各成分を持つ色を返します。すべてのコンポーネントは 0 から 1 の範囲でなければならない。


size size(real width, real height)

指定されたwidthheight を持つサイズを返す。


color tint(color baseColor, color tintColor)

この関数を使うと、ある色 (baseColor) を別の色 (tintColor) で染めることができます。

通常、色合いの色はほとんど透明でなければなりません。下の例では、1/16だけ不透明の純粋な赤を着色色にすることで、わずかな赤の色合いを提供しています。

Item {
    Rectangle {
        x: 0; width: 80; height: 80
        color: "lightsteelblue"
    }
    Rectangle {
        x: 100; width: 80; height: 80
        color: Qt.tint("lightsteelblue", "#10FF0000")
    }
}

Tint は、何らかのイベントによって微妙な変化を伝えようとする場合に最も有用です。


url url(url url)

url をそのまま返します。urlQt.resolvedUrl() とは対照的に、これは相対 URL を保持します。文字列は暗黙のうちに URL に変換されるので、この関数は文字列を引数として呼び出すことができます。

resolvedUrl()も参照


vector2d vector2d(real x, real y)

指定されたxy の値を vector2d で返します。


vector3d vector3d(real x, real y, real z)

vector3d: 指定されたx,y,z の値を vector3d で返します。


vector4d vector4d(real x, real y, real z, real w)

vector4d を、指定されたxyzw の値で返します。


©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。