このページでは

C

Control QML Type

すべてのコントロールに共通する機能を提供する抽象的な基本型。詳細...

Import Statement: import QtQuick.Controls
Since: Qt Quick Ultralite 1.0
Inherits:

Item

Inherited By:

AbstractButton, Dial, ProgressBar, Slider, and SwipeView

プロパティ

詳細説明

Controlはユーザー・インターフェース・コントロールの基本型である。プラットフォーム・インターフェースから入力イベントを受け取り、それ自身の表現を画面に描画します。

コントロールのレイアウト

次の図は、典型的なコントロールのレイアウトを示している:

コントロールのimplicitWidthimplicitHeight は、通常、背景とコンテント・アイテムの暗黙のサイズと、インセットとパディングに基づいています。これらのプロパティは、明示的なwidth またはheight が提供されない場合のコントロールの大きさを決定します。

contentItem のジオメトリはパディングによって決定されます。次の例では、コントロールの境界とそのコンテンツの間に10px のパディングを確保しています:

Control {
    padding: 10

    contentItem: Text {
        text: "Content"
    }
}

background アイテムは、インセットまたは明示的なサイズが提供されない限り、コントロールの幅と高さ全体を埋めます。背景インセットは、コントロールの視覚的なサイズに影響を与えることなく、タッチ可能/インタラクティブ領域を拡張するのに便利です。これは、タッチデバイスで、コントロールが小さすぎてユーザーが操作できないことがないようにするためによく使われます。インセットはコントロールのサイズに影響するため、レイアウトなどで占めるスペースに影響します。

負のインセットを使用すると、背景をコントロールよりも大きくすることができます。次の例では、負のインセットを使用して、コントロールの境界の外側に影を配置しています:

Control {
    topInset: -2
    leftInset: -2
    rightInset: -6
    bottomInset: -6

    background: BorderImage {
        source: ":/images/shadowed-background.png"
    }
}

イベント処理

非インタラクティブ・インジケータを除くすべてのコントロールは、クリックやタッチを下のアイテムに伝えません。例えば、下の例のconsole.log() 呼び出しは、CheckBox をクリックしても実行されません。MouseArea はシーン内で下にあるからです:

MouseArea {
    anchors.fill: parent
    onClicked: console.log("MouseArea was clicked")

    CheckBox {
        anchors.fill: parent
    }
}

コントロールのスタイリングも参照してください

プロパティの説明

availableHeight : real [read-only]

このプロパティは、コントロールのheight から垂直パディングを差し引いた後のcontentItem で利用可能な高さを保持する。

Control LayoutpaddingtopPaddingbottomPaddingも参照の こと。


availableWidth : real [read-only]

このプロパティは、コントロールのwidth から水平方向のパディングを差し引いた後の、contentItem で利用可能な幅を保持する。

Control Layout,padding,leftPadding,rightPaddingも参照のこと


background : Item

このプロパティは背景項目を保持する。

Button {
    id: control
    text: qsTr("Button")
    background: Rectangle {
        implicitWidth: 100
        implicitHeight: 40
        opacity: enabled ? 1 : 0.3
        color: control.down ? "#d0d0d0" : "#e0e0e0"
    }
}

備考: 背景項目のサイズが明示的に指定されていない場合、自動的にコントロールのサイズに従う。ほとんどの場合、背景項目の幅や高さを指定する必要はない。

注意: ほとんどのコントロールは、コントロール自体の暗黙のサイズを計算するために、背景アイテムの暗黙のサイズを使用する。背景アイテムをカスタムのものに置き換える場合、そのアイテムに適切な暗黙のサイズを提供することも考慮する必要があります(Image のように、独自の暗黙のサイズを持つアイテムを除く)。

Control Layoutも参照してください


bottomInset : real

このプロパティは、背景のボトムインセットを保持します。

Control LayouttopInset参照して ください。


bottomPadding : real

このプロパティはボトムパディングを保持します。

Control LayoutpaddingtopPaddingavailableHeightも参照


contentItem : Item

このプロパティは、ビジュアルコンテンツアイテムを保持します。

Button {
    id: control
    text: qsTr("Button")
    contentItem: Text {
        text: control.text
        verticalAlignment: Text.AlignVCenter
    }
}

注意: コンテンツ・アイテムは、コントロールのpadding 内に収まるように自動的に配置され、サイズが変更される。contentItem のx,y,width,height プロパティへのバインディングは尊重されない。

注意: ほとんどのコントロールは、コントロール自体の暗黙のサイズを計算するために、内容項目の暗黙のサイズを使用する。コンテンツ・アイテムをカスタム・アイテムに置き換える場合、そのアイテムに適切な暗黙的サイズを提供することも考慮する必要があります(Text のように独自の暗黙的サイズを持つアイテムを除く)。

Control Layoutpaddingも参照して ください。


font : font

このプロパティは、コントロールの現在のフォントを保持する。

このプロパティは、コントロールが要求するフォントを記述する。フォントは、標準コンポーネントをレンダリングするときにコントロールのスタイルによって使用されます。プラットフォームが異なったり、スタイルが異なったりすると、アプリケーションのフォントが異なることがよくあります。

コントロールのスタイルによって上書きされない場合、デフォルトのフォントファミリはMCU.Config.defaultFontFamilyに依存します。また、コントロールの種類によっては、特別なフォント・デフォルトがある場合もあります。

注意: Qt Quick Controls とは逆に、フォント・プロパティはコントロールの子には伝わりません。

利用可能なフォント・プロパティの全リストは、Text タイプ・ドキュメントを参照してください。

テキストレンダリングとフォントと Textも参照してください


leftInset : real

このプロパティは、背景の左挿入を保持します。

Control Layout およびrightInsetも参照


leftPadding : real

このプロパティは左パディングを保持します。

Control LayoutpaddingrightPaddingavailableWidthも参照


padding : real

このプロパティはデフォルトのパディングを保持します。

パディングは、コンテンツアイテムの各辺と背景アイテムの間にスペースを追加し、コンテンツアイテムのサイズを効果的に制御する。コントロールの特定の辺のパディング値を指定するには、関連するプロパティを設定する:

注: スタイルによって、特定のコントロールのデフォルトのパディングの指定方法が異なる場合があります。このような変更が指定したパディング値に影響しないようにするには、利用可能なプロパティの中で最も具体的なものを使用するのが最善です。例えば、padding プロパティを設定するのではなく、次のように各特定プロパティを設定します:

padding: 0

を設定する代わりに、各特定プロパティを設定します:

leftPadding: 0
rightPadding: 0
topPadding: 0
bottomPadding: 0

Control Layout,availableWidth,availableHeight,topPadding,leftPadding,rightPadding,bottomPaddingも参照してください


rightInset : real

このプロパティは、背景の右挿入を保持します。

Control LayoutleftInsetも参照


rightPadding : real

このプロパティは右パディングを保持します。

Control Layout,padding,leftPadding,availableWidthも参照


spacing : real

このプロパティはスペーシングを保持する。

スペーシングは、複数の、あるいは繰り返しの構成要素を持つコントロールに有用である。例えば、CheckBox のテキストとインジケータの間の距離を決定するためにスペーシングを使用するスタイルもあります。スペーシングはControlによって強制されるものではないので、各スタイルによって解釈が異なり、完全に無視するものもあります。


topInset : real

このプロパティは、背景のトップインセットを保持します。

Control LayoutbottomInsetも参照してください


topPadding : real

このプロパティは、上部のパディングを保持します。

Control LayoutpaddingbottomPaddingavailableHeightも参照して ください。


特定の Qt ライセンスの下で利用可能です。
詳細を見る。