QML サイドバーナビゲーション実装ガイド【Qt】

QMLサイドバーナビゲーションを実現するには、 ColumnレイアウトとListViewコントロールを使用することができます。以下は簡単なサンプルコードです:

import QtQuick 2.15
import QtQuick.Controls 2.15

ApplicationWindow {
    visible: true
    width: 800
    height: 600

    ColumnLayout {
        anchors.fill: parent

        ListView {
            model: ListModel {
                ListElement { text: "Option 1" }
                ListElement { text: "Option 2" }
                ListElement { text: "Option 3" }
            }

            delegate: Item {
                width: parent.width
                height: 50

                Rectangle {
                    color: ListView.isCurrentItem ? "lightblue" : "white"
                    width: parent.width
                    height: parent.height

                    Text {
                        text: model.text
                        anchors.centerIn: parent
                    }

                    MouseArea {
                        anchors.fill: parent
                        onClicked: {
                            listView.currentIndex = index
                        }
                    }
                }
            }
        }

        Rectangle {
            Layout.fillHeight: true
            Layout.fillWidth: true
            color: "lightgrey"
        }
    }
}

この例では、ColumnLayoutレイアウトを使用してListViewとその他のコンテンツを配置しています。ListViewには単純なListModelが含まれており、ナビゲーションバーの選択肢を表示するために使用されています。各選択肢はItemを使用して表示され、選択肢をクリックすると選択状態が切り替わります。さらに、例ではメインコンテンツ領域を示す灰色のRectangleも使用されています。

この方法で、簡単にシンプルなQMLのサイドバーナビゲーションを実現することができます。スタイルや機能を自分のニーズに合わせてカスタマイズすることができます。

bannerAds