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. Does QML support native look-and-feel on Windows?
Forum Updated to NodeBB v4.3 + New Features

Does QML support native look-and-feel on Windows?

Scheduled Pinned Locked Moved Solved QML and Qt Quick
20 Posts 6 Posters 4.6k Views 4 Watching
  • 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.
  • raven-worxR raven-worx

    @Asperamanca
    my personal preference is
    QtWidgets for Desktop
    QML for mobile/touch devices

    KevinMQtK Offline
    KevinMQtK Offline
    KevinMQt
    wrote on last edited by
    #7

    @raven-worx said in Does QML support native look-and-feel on Windows?:

    @Asperamanca
    my personal preference is
    QtWidgets for Desktop
    QML for mobile/touch devices

    Bo Thorsen also expressed a similar view back in 2015: https://lists.qt-project.org/pipermail/interest/2015-June/017412.html

    It's 2019, do you still hold the same view that Qt Widgets is best for native looking Desktop(Win,Mac,Linux) applications and Qt Quick/QML is best for Mobile & Embedded. Qt Designer is the drag and drop tool(rapid prototyping) for Qt Widgets, is it in active development? I'm asking this because on Qt website about UI tools it's not listed. https://www.qt.io/design I was thinking if Qt Widgets is still in use then Qt Designer should be added there.

    raven-worxR 1 Reply Last reply
    0
    • raven-worxR raven-worx

      @Asperamanca
      my personal preference is
      QtWidgets for Desktop
      QML for mobile/touch devices

      A Offline
      A Offline
      Asperamanca
      wrote on last edited by
      #8

      @raven-worx said in Does QML support native look-and-feel on Windows?:

      @Asperamanca
      my personal preference is
      QtWidgets for Desktop
      QML for mobile/touch devices

      And what do you do it the same code (logically, not necessary the identical GUI) should run on both?
      E.g. either a PC/Notebook or a large touchscreen / touch notebook?

      1 Reply Last reply
      0
      • KevinMQtK KevinMQt

        @raven-worx said in Does QML support native look-and-feel on Windows?:

        @Asperamanca
        my personal preference is
        QtWidgets for Desktop
        QML for mobile/touch devices

        Bo Thorsen also expressed a similar view back in 2015: https://lists.qt-project.org/pipermail/interest/2015-June/017412.html

        It's 2019, do you still hold the same view that Qt Widgets is best for native looking Desktop(Win,Mac,Linux) applications and Qt Quick/QML is best for Mobile & Embedded. Qt Designer is the drag and drop tool(rapid prototyping) for Qt Widgets, is it in active development? I'm asking this because on Qt website about UI tools it's not listed. https://www.qt.io/design I was thinking if Qt Widgets is still in use then Qt Designer should be added there.

        raven-worxR Offline
        raven-worxR Offline
        raven-worx
        Moderators
        wrote on last edited by
        #9

        @KevinMQt said in Does QML support native look-and-feel on Windows?:

        It's 2019, do you still hold the same view that Qt Widgets is best for native looking Desktop(Win,Mac,Linux) applications and Qt Quick/QML is best for Mobile & Embedded

        yes, i (personally) do.

        Qt Designer is the drag and drop tool(rapid prototyping) for Qt Widgets, is it in active development?

        it's part of QtCreator, so yes. Also there is QtDesignStudio in the meantime available.

        And what do you do it the same code (logically, not necessary the identical GUI) should run on both?

        There is no true right/wrong.
        It als heavily depends on your UI. Nevertheless its possible to share the same backend (C++ data logic) and only use QtWidgets and QML for the UI (see the MVC pattern for example).
        See https://doc.qt.io/qt-5/qtqml-cppintegration-data.html

        --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
        If you have a question please use the forum so others can benefit from the solution in the future

        A 1 Reply Last reply
        1
        • raven-worxR raven-worx

          @KevinMQt said in Does QML support native look-and-feel on Windows?:

          It's 2019, do you still hold the same view that Qt Widgets is best for native looking Desktop(Win,Mac,Linux) applications and Qt Quick/QML is best for Mobile & Embedded

          yes, i (personally) do.

          Qt Designer is the drag and drop tool(rapid prototyping) for Qt Widgets, is it in active development?

          it's part of QtCreator, so yes. Also there is QtDesignStudio in the meantime available.

          And what do you do it the same code (logically, not necessary the identical GUI) should run on both?

          There is no true right/wrong.
          It als heavily depends on your UI. Nevertheless its possible to share the same backend (C++ data logic) and only use QtWidgets and QML for the UI (see the MVC pattern for example).
          See https://doc.qt.io/qt-5/qtqml-cppintegration-data.html

          A Offline
          A Offline
          Asperamanca
          wrote on last edited by
          #10

          @raven-worx said in Does QML support native look-and-feel on Windows?:

          @KevinMQt said in Does QML support native look-and-feel on Windows?:

          It's 2019, do you still hold the same view that Qt Widgets is best for native looking Desktop(Win,Mac,Linux) applications and Qt Quick/QML is best for Mobile & Embedded

          yes, i (personally) do.

          Qt Designer is the drag and drop tool(rapid prototyping) for Qt Widgets, is it in active development?

          it's part of QtCreator, so yes. Also there is QtDesignStudio in the meantime available.

          And what do you do it the same code (logically, not necessary the identical GUI) should run on both?

          There is no true right/wrong.
          It als heavily depends on your UI. Nevertheless its possible to share the same backend (C++ data logic) and only use QtWidgets and QML for the UI (see the MVC pattern for example).
          See https://doc.qt.io/qt-5/qtqml-cppintegration-data.html

          Did you share the right link? I don't see any mention of MVC or "model" in the article.
          Also, for scenes that have complex logic in the loading code, my impression so far is that generating QML scenes from C++ (via template QML files) must by necessity be very slow compared to creating a scene directly in GraphicsView.

          raven-worxR 1 Reply Last reply
          0
          • A Asperamanca

            @raven-worx said in Does QML support native look-and-feel on Windows?:

            @KevinMQt said in Does QML support native look-and-feel on Windows?:

            It's 2019, do you still hold the same view that Qt Widgets is best for native looking Desktop(Win,Mac,Linux) applications and Qt Quick/QML is best for Mobile & Embedded

            yes, i (personally) do.

            Qt Designer is the drag and drop tool(rapid prototyping) for Qt Widgets, is it in active development?

            it's part of QtCreator, so yes. Also there is QtDesignStudio in the meantime available.

            And what do you do it the same code (logically, not necessary the identical GUI) should run on both?

            There is no true right/wrong.
            It als heavily depends on your UI. Nevertheless its possible to share the same backend (C++ data logic) and only use QtWidgets and QML for the UI (see the MVC pattern for example).
            See https://doc.qt.io/qt-5/qtqml-cppintegration-data.html

            Did you share the right link? I don't see any mention of MVC or "model" in the article.
            Also, for scenes that have complex logic in the loading code, my impression so far is that generating QML scenes from C++ (via template QML files) must by necessity be very slow compared to creating a scene directly in GraphicsView.

            raven-worxR Offline
            raven-worxR Offline
            raven-worx
            Moderators
            wrote on last edited by
            #11

            @Asperamanca said in Does QML support native look-and-feel on Windows?:

            Did you share the right link? I don't see any mention of MVC or "model" in the article.

            MVC is a generic software pattern to separate logic from representation (UI).
            https://en.wikipedia.org/wiki/Model–view–controller

            --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
            If you have a question please use the forum so others can benefit from the solution in the future

            A 1 Reply Last reply
            0
            • raven-worxR raven-worx

              @Asperamanca said in Does QML support native look-and-feel on Windows?:

              Did you share the right link? I don't see any mention of MVC or "model" in the article.

              MVC is a generic software pattern to separate logic from representation (UI).
              https://en.wikipedia.org/wiki/Model–view–controller

              A Offline
              A Offline
              Asperamanca
              wrote on last edited by
              #12

              @raven-worx said in Does QML support native look-and-feel on Windows?:

              @Asperamanca said in Does QML support native look-and-feel on Windows?:

              Did you share the right link? I don't see any mention of MVC or "model" in the article.

              MVC is a generic software pattern to separate logic from representation (UI).
              https://en.wikipedia.org/wiki/Model–view–controller

              Yeah, I know that one. I was just wondering what the link you originally shared had to do with it.

              raven-worxR 1 Reply Last reply
              0
              • A Asperamanca

                @raven-worx said in Does QML support native look-and-feel on Windows?:

                @Asperamanca said in Does QML support native look-and-feel on Windows?:

                Did you share the right link? I don't see any mention of MVC or "model" in the article.

                MVC is a generic software pattern to separate logic from representation (UI).
                https://en.wikipedia.org/wiki/Model–view–controller

                Yeah, I know that one. I was just wondering what the link you originally shared had to do with it.

                raven-worxR Offline
                raven-worxR Offline
                raven-worx
                Moderators
                wrote on last edited by
                #13

                @Asperamanca said in Does QML support native look-and-feel on Windows?:

                I was just wondering what the link you originally shared had to do with it.

                it is about how C++ data types (backend) can be sent to QML (UI) and vice versa.

                --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
                If you have a question please use the forum so others can benefit from the solution in the future

                1 Reply Last reply
                0
                • raven-worxR raven-worx

                  @Asperamanca said in Does QML support native look-and-feel on Windows?:

                  Does that mean that native styling is only supported by Qt Quick Controls 1?

                  yes

                  RokeJulianLockhartR Offline
                  RokeJulianLockhartR Offline
                  RokeJulianLockhart
                  wrote last edited by RokeJulianLockhart
                  #14

                  Does that mean that native styling is only supported by Qt Quick Controls 1?

                  Yes.

                  @raven-worx, is this still true? I ask because I want to commit to Qt 6, but it's really, really difficult when native style support is so inconsistent. I see that QtWidgets, which inherits the native QStyle is deprecated in favour of QML, but solely the deprecated QtQuickControls 1 appears to provide native QQuickStyle, for its replacement – at least, QtQuickControls 2 – does not appear to.

                  I'm using KDE Plasma 6 as my development and deployment environment, so native "application style" (as kcm_style phrases it) is important to me (until at least KDE's Union can unify the QStyle and QQuickStyles). If not, I'll convert to something like wxQt / wxMSW (post/822753) per-platform.

                  When using a forum, remember to tag the person you are responding to, in case they are not subscribed to the thread.

                  JKSHJ B 2 Replies Last reply
                  0
                  • RokeJulianLockhartR RokeJulianLockhart

                    Does that mean that native styling is only supported by Qt Quick Controls 1?

                    Yes.

                    @raven-worx, is this still true? I ask because I want to commit to Qt 6, but it's really, really difficult when native style support is so inconsistent. I see that QtWidgets, which inherits the native QStyle is deprecated in favour of QML, but solely the deprecated QtQuickControls 1 appears to provide native QQuickStyle, for its replacement – at least, QtQuickControls 2 – does not appear to.

                    I'm using KDE Plasma 6 as my development and deployment environment, so native "application style" (as kcm_style phrases it) is important to me (until at least KDE's Union can unify the QStyle and QQuickStyles). If not, I'll convert to something like wxQt / wxMSW (post/822753) per-platform.

                    JKSHJ Offline
                    JKSHJ Offline
                    JKSH
                    Moderators
                    wrote last edited by
                    #15

                    @RokeJulianLockhart said in Does QML support native look-and-feel on Windows?:

                    @raven-worx, is this still true? I ask because I want to commit to Qt 6, but it's really, really difficult when native style support is so inconsistent.

                    In Qt 6, Qt Quick Controls offers the Windows style (Windows 10 style) as well as the FluentWinUI3 style (Windows 11 style): https://doc.qt.io/qt-6/qtquickcontrols-styles.html#windows-style

                    I see that QtWidgets, which inherits the native QStyle is deprecated in favour of QML

                    Widgets aren't going anywhere anytime soon. They are still fully maintained, and are even getting a new style: https://wiki.qt.io/QtCS25_-_UnifiedStyling

                    Qt Doc Search for browsers: forum.qt.io/topic/35616/web-browser-extension-for-improved-doc-searches

                    RokeJulianLockhartR 1 Reply Last reply
                    2
                    • RokeJulianLockhartR RokeJulianLockhart

                      Does that mean that native styling is only supported by Qt Quick Controls 1?

                      Yes.

                      @raven-worx, is this still true? I ask because I want to commit to Qt 6, but it's really, really difficult when native style support is so inconsistent. I see that QtWidgets, which inherits the native QStyle is deprecated in favour of QML, but solely the deprecated QtQuickControls 1 appears to provide native QQuickStyle, for its replacement – at least, QtQuickControls 2 – does not appear to.

                      I'm using KDE Plasma 6 as my development and deployment environment, so native "application style" (as kcm_style phrases it) is important to me (until at least KDE's Union can unify the QStyle and QQuickStyles). If not, I'll convert to something like wxQt / wxMSW (post/822753) per-platform.

                      B Offline
                      B Offline
                      Bob64
                      wrote last edited by
                      #16

                      @RokeJulianLockhart said in Does QML support native look-and-feel on Windows?:

                      ... I want to commit to Qt 6, ..., but solely the deprecated QtQuickControls 1 appears to provide native QQuickStyle, for its replacement

                      Just to note that QtQuickControls 1 is more than deprecated in Qt 6. The deprecation happened in Qt 5 in advance of its removal in Qt 6.

                      1 Reply Last reply
                      1
                      • JKSHJ JKSH

                        @RokeJulianLockhart said in Does QML support native look-and-feel on Windows?:

                        @raven-worx, is this still true? I ask because I want to commit to Qt 6, but it's really, really difficult when native style support is so inconsistent.

                        In Qt 6, Qt Quick Controls offers the Windows style (Windows 10 style) as well as the FluentWinUI3 style (Windows 11 style): https://doc.qt.io/qt-6/qtquickcontrols-styles.html#windows-style

                        I see that QtWidgets, which inherits the native QStyle is deprecated in favour of QML

                        Widgets aren't going anywhere anytime soon. They are still fully maintained, and are even getting a new style: https://wiki.qt.io/QtCS25_-_UnifiedStyling

                        RokeJulianLockhartR Offline
                        RokeJulianLockhartR Offline
                        RokeJulianLockhart
                        wrote last edited by RokeJulianLockhart
                        #17

                        @JKSH, as aforestated, my environment isn't primarily Windows, so a pre-defined WinUI2/3-equivalent QQuickStyle is assistive, but not sufficiently comprehensive if I want to utilise QML.

                        However, I'm glad to hear that QtWidgets are in active development.

                        Though, this rather reminds me of the mess with Microsoft's myriad equivalent GUI endeavours – is all the information I see online about QtWidgets being deprecated in QML's favour (which KDE's push for Kirigami appears to mimic) because that was once true, but isn't anymore?

                        When using a forum, remember to tag the person you are responding to, in case they are not subscribed to the thread.

                        JKSHJ 1 Reply Last reply
                        0
                        • RokeJulianLockhartR RokeJulianLockhart

                          @JKSH, as aforestated, my environment isn't primarily Windows, so a pre-defined WinUI2/3-equivalent QQuickStyle is assistive, but not sufficiently comprehensive if I want to utilise QML.

                          However, I'm glad to hear that QtWidgets are in active development.

                          Though, this rather reminds me of the mess with Microsoft's myriad equivalent GUI endeavours – is all the information I see online about QtWidgets being deprecated in QML's favour (which KDE's push for Kirigami appears to mimic) because that was once true, but isn't anymore?

                          JKSHJ Offline
                          JKSHJ Offline
                          JKSH
                          Moderators
                          wrote last edited by
                          #18

                          @RokeJulianLockhart said in Does QML support native look-and-feel on Windows?:

                          @JKSH, as aforestated, my environment isn't primarily Windows, so a pre-defined WinUI2/3-equivalent QQuickStyle is assistive, but not sufficiently comprehensive if I want to utilise QML.

                          Ah, I missed that. This thread is about native look-and-feel on Windows so I answered in that context.

                          OK, Qt Quick Controls also has native styles for macOS, iOS, and Android. (There's no such thing as a "native" style for Linux)

                          My suggestion? Give Qt Quick a test run with a simple test project. Decide whether to use it or not based on how it helps you get things done, not just what styles are available.

                          Other note: The graphics technology is called Qt Quick. The primary language is QML, but you can still use C++ to implement some Qt Quick classes if you wish.

                          is all the information I see online about QtWidgets being deprecated in QML's favour (which KDE's push for Kirigami appears to mimic) because that was once true, but isn't anymore?

                          Well, Qt Widgets was never deprecated in the first place.

                          My guess is that people saw that each new release brought big improvements to Qt Quick but didn't bring big improvements to Qt Widgets, and concluded that widgets are being dumped. What they forgot was this:

                          • Widgets were a mature, 20-year-old technology that works well and is relied on by many, so there's no room for fancy revolutionary changes.
                          • Qt Quick was a new young technology, wet around the ears, with lots of room for growth. That's why the growth spurts seem so dramatic.

                          However, I'm glad to hear that QtWidgets are in active development.

                          I'm not sure I'd use the term "active development" though. It's being maintained, bugs are fixed, and it's kept working smoothly with new versions of OS'es, but there's no revolution happening.

                          Qt Doc Search for browsers: forum.qt.io/topic/35616/web-browser-extension-for-improved-doc-searches

                          1 Reply Last reply
                          2
                          • A Offline
                            A Offline
                            Asperamanca
                            wrote last edited by
                            #19

                            My understanding is that KDE itself uses Qt Quick, so I'd be surprised if they could not make the controls look native...

                            1 Reply Last reply
                            1
                            • RokeJulianLockhartR Offline
                              RokeJulianLockhartR Offline
                              RokeJulianLockhart
                              wrote last edited by
                              #20

                              @Asperamanca, you'd be as surprised as me, per discuss.kde.org/t/173/17 and discuss.kde.org/t/13920. Although the focuses are on a very specific (albeit important topic), the latter cites some very verbose criticisms from developers. I'm of the hope it's Kirigami's fault, rather than QML's. However, when I've tried pure QML on Plasma, it's looked worse than even Kirigami does. I'll presume that that's because the original creators of Kirigami attempted to style QML initially, and solely after they realised that they couldn't to their satisfaction, created Kirigami.

                              I'd say that this is in comparison to their QStyle, which doesn't require a middleman to style QtWidgets-based applications. However, considering the Union project has recently come to fruition, that might not be true. Though, it might instead be because they need to style QML so heavily that they can't feasibly maintain a QStyle and QQuickStyle.

                              I'll merely wait a little for Union to be released, to see whether the styling improves across platforms. The FluentWinUI3 were a significant improvement, after seeing them in use in NextCloud on Windows 11. It'd be nice if solely one technology were the future, whether QML or QtWidgets.

                              When using a forum, remember to tag the person you are responding to, in case they are not subscribed to the thread.

                              1 Reply Last reply
                              0

                              • Login

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