Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. QML and Qt Quick
  4. How to convert horizontal menu tab to vertical in QML?
QtWS25 Last Chance

How to convert horizontal menu tab to vertical in QML?

Scheduled Pinned Locked Moved Solved QML and Qt Quick
2 Posts 1 Posters 527 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J Offline
    J Offline
    Janilson Duarte
    wrote on last edited by
    #1

    I want to convert a horizontal menu tab to vertical menu tab, I wrote the following code:

    TabView {
         id: frame
         anchors.fill: parent
         anchors.margins: 4
         Tab { title: "Tab 1" }
         Tab { title: "Tab 2" }
         Tab { title: "Tab 3" }
    
         style: TabViewStyle {
             frameOverlap: 1
             tab: Rectangle {
                 color: styleData.selected ? "steelblue" :"lightsteelblue"
                 border.color:  "steelblue"
                 implicitWidth: Math.max(text.width + 4, 80)
                 implicitHeight: 20
                 radius: 2
                 Text {
                     id: text
                     anchors.centerIn: parent
                     text: styleData.title
                     color: styleData.selected ? "white" : "black"
                 }
             }
             frame: Rectangle { color: "steelblue" }
         }
     }
    

    Any help? Thanks.

    1 Reply Last reply
    0
    • J Offline
      J Offline
      Janilson Duarte
      wrote on last edited by
      #2

      People, I did many experiencs but almost nothing worked until I found this post https://evileg.com/en/post/191/ that helped me and I used to turn the menu horizontal to vertical. below is the code I used.

      Thank you very much!

      // Layer with buttons that will change the fragments
      RowLayout {
          id: rowLayout
          anchors.top: parent.top
          anchors.left: parent.left
          anchors.leftMargin: 0
          anchors.margins: 15
      
          Button {
              id: button1
              anchors.left: rowLayout.left
              text: qsTr("Fragment 1")
              // Download the component from a file
              onClicked: loader.source = "Fragment1.qml"
          }
      
          Button {
              id: button2
              anchors.left: rowLayout.left
              anchors.top: button1.bottom
              text: qsTr("Fragment 2")
              // Loading setSource component through the method of installing the fragment parameters
              onClicked: loader.setSource("Fragment2.qml")
          }
      
          Button {
              id: button3
              anchors.left: rowLayout.left
              anchors.top: button2.bottom
      
              text: qsTr("Fragment 3")
              // Loading setSource component through the method of installing the fragment parameters
              onClicked: loader.setSource("Fragment3.qml")
          }
      
          Button {
              id: button4
              anchors.left: rowLayout.left
              anchors.top: button3.bottom
      
              text: qsTr("Fragment 4")
              // Installing a fragment from the Component
              onClicked: loader.sourceComponent = fragment4
          }
      
          Button {
              id: button5
              anchors.left: rowLayout.left
              anchors.top: button4.bottom
      
              text: qsTr("Fragment 5")
              // Installing a fragment from the Component
              onClicked: loader.sourceComponent = fragment5
          }
      }
      
      Loader {
          id: loader
          anchors.top: rowLayout.bottom
          anchors.left: parent.left
          anchors.right: parent.right
          anchors.bottom: parent.bottom
          anchors.topMargin: -40
          anchors.leftMargin: 63
          source: "Fragment1.qml"
      }
      
      1 Reply Last reply
      2

      • Login

      • Login or register to search.
      • First post
        Last post
      0
      • Categories
      • Recent
      • Tags
      • Popular
      • Users
      • Groups
      • Search
      • Get Qt Extensions
      • Unsolved