BEST GUI TOOLKITS for C++ | Sciber

Поділитися
Вставка
  • Опубліковано 14 лип 2024
  • Although C++ is the best programming language in the world, it still has its cons. Building a GUI app has never been easier in C++, you either have to use the Win32 API or use some sort of Toolkit/Framework to adopt GUI components without writing them yourself.
    In this video, we will go through 5 of the most popular GUI frameworks for C++ and some other options you can consider when building a GUI for your C++ app. We will talk about the Pros and Cons of each toolkit/framework and I will provide a straightforward guide so that you can choose which framework to choose for your next C++ project.
    This video is primarily focused on beginners, however, anyone can gain something out of it.
    I also have tutorials on one of the frameworks mentioned in the video: WinForms - a popular GUI framework for C++ for building Windows Apps using the .NET Framework.
    Here is the link for a full playlist on building Modern Looking GUI apps using C++ and WinForms:
    • C++ GUI: Install C++ C...
    Timestamps
    0:00 Introduction
    01:23 WinForms (.NET Framework)
    04:38 QT Framework
    07:18 wxWidgets
    08:31 UWP with C++/CX or C++/WinRT
    10:25 Embarcedero's C++ Builder - RAD Studio
    11:14 Other Frameworks Concluded...
    11:30 Dear ImGUI, SFML & SDL
    12:12 WebView Frameworks
    13:23 My Recommendations
    14:48 Pure Genius Wisdom
    15:28 Thank you for Watching
    15:52 End Screens :)
    To Get started with WinForms, watch this: • C++ GUI: Install C++ C...
    Download Visual Studio 2019 Community: visualstudio.microsoft.com/th...
    Download QT: www.qt.io/
    Download wxWidgets: www.wxwidgets.org/
    For UWP you need Visual Studio with UWP Workloads: visualstudio.microsoft.com/th...
    (Tutorial will be linked when gets published)
    C++ Builder Rad Studio: www.embarcadero.com/products/...
    Also, Here's why you shouldn't choose C++ for GUI as the first choice: • DON'T LEARN C++ GUI UN...
    All links above are official links from the official websites.
    BUT PLEASE DON'T CLICK THIS: bit.ly/youtubesubbotislegit
    Leave any kind of Constructive Criticism, suggestions, and ideas in the comments section below!
    Facebook: (PAGE) sciber.web.app/fb
    (GROUP) / programmingsrilanka
    Instagram: sciber.web.app/ig
    Telegram Community: t.me/wearesciber
    Visit Us : sciber.web.app
  • Наука та технологія

КОМЕНТАРІ • 125

  • @christianm4906
    @christianm4906 6 місяців тому +7

    Qt open source can be used in proprietary software without needing to release the source code, as long as you comply with the LGPLv3 licence. This compliance includes obligations such as dynamic linking and allowing users the ability to replace the Qt libraries. All you need to ensure is that you only use Qt modules licensed under LGPLv3. These modules are typically sufficient to cover almost all applications. However, by purchasing a Qt licence, you gain additional benefits, such as support and access to all modules without the constraints of LGPLv3 obligations.

  • @FPChris
    @FPChris 2 роки тому +38

    I can’t believe in 2022 the GUI options are as bad as they are. I mean should be as foundational as printf.

    • @atlantic_love
      @atlantic_love 2 роки тому +4

      The options available to the public. C++ dev's tend to be guarded about not letting their work get out.

    • @mickeywebb6850
      @mickeywebb6850 2 роки тому

      @@atlantic_love what??

    • @inriinriinriinriinri
      @inriinriinriinriinri Місяць тому +3

      It’s 2024 and it’s not getting better. Everything is in browser now. The era of desktop applications has gone :(

    • @MaxJM711
      @MaxJM711 26 днів тому

      @@inriinriinriinriinri I'm honestly still a desk app lover lol Idk how popular it is in the C++ world but I'm really interested on using Slint for some Rust apps, gotta make native apps popular again lol

  • @AshTeaches
    @AshTeaches Рік тому +1

    I gotta say, I was looking through various tutorials and I like yours the most. Your humor is great and you explained things in a helpful way, thank you!

  • @mahamadkher7897
    @mahamadkher7897 2 роки тому +5

    thank you Sciber You're the best UA-camr for programming c++ , Thank you very much

  • @Error-40004
    @Error-40004 2 роки тому +1

    Thanks man, I'm coding since 4 months in Accenture but they always want only codes so I'm bored. Now i can start this gui framework!

  • @VishalSingh-ls4re
    @VishalSingh-ls4re 2 роки тому +1

    "Excellent explanation, all doubts are clear now.
    Keep it up."

  • @kawwedha4006
    @kawwedha4006 2 роки тому +3

    I like the simplicity in this video, from explanation, the chilling voice, the illustrations used.... I just like it

  • @vladimirkraus1438
    @vladimirkraus1438 Рік тому +7

    You made completely wrong comment about Qt. Qt is free also for commercial development. As long as you comply with LGPL license, which is usually very easy.

    • @DungVu-di7dz
      @DungVu-di7dz 4 місяці тому +1

      You should read carefully about Qt license, it is almost not free for individuals or small groups like Microsoft. I sure not free

  • @ShanGao-mk9zh
    @ShanGao-mk9zh Рік тому

    Great video from pratice by you , Thanks

  • @aswajiths352
    @aswajiths352 Рік тому

    Don't worry bro myself always support you and post a lot of videos based on c++ and ui bro 😉

  • @elnurbadalov3621
    @elnurbadalov3621 2 роки тому

    that is awesome video!

  • @Awwe12675
    @Awwe12675 7 місяців тому

    Thank you this helpful information

  • @arkan7rb
    @arkan7rb 4 місяці тому

    really man i dont know how to thank you
    wonderful video really, going to search your channel for everything i really hope i would find about qt more there also the visual studio configuration for c++ i heard you saying u had made one, hope its updated ^_^
    greetings from Yemen

  • @dev_ression
    @dev_ression 2 роки тому +5

    Awesome video man, this is the clearest video I've watched on this topic!

  • @jenilpatel6706
    @jenilpatel6706 3 місяці тому

    Very much thank you for creating this video 😭😭😭😭

  • @nacxxj7184
    @nacxxj7184 2 роки тому +3

    Hey bro, I am very happy and fortunate to find your great channel. I am not like others just fall into learning html, css and js to make web apps. I love web apps but find it quite hard for me. But enjoyed c++, c# and just doing competitive programming. My question aries, is it possible to be a GUI developer only? Is there any scope to be one? And can u also plz add up some about backend for gui development? I deprecated frontend totally, dont wanna go on that again, so I want some career tips as well bro🙏🙏🙏

    • @wearesciber
      @wearesciber  2 роки тому +3

      Hi, thanks for the great compliments😊. But, I couldn't follow your question. Usually GUI is the frontend so you ditched frontend and then you want to become a GUI developer? Also what do you mean by backend for GUI, you mean like making GUI systems for backend? I'm really sorry, could you please rephrase the questions.

    • @nacxxj7184
      @nacxxj7184 2 роки тому

      @@wearesciber I Don't like frontend part of the web like centering div in css. But enjoyed GUI development is there any scope to be a gui developer?

    • @wearesciber
      @wearesciber  2 роки тому +1

      Oh you mean like a UI/UX designer. Like not actually coding but more like designing using photoshop or XD or something? Well that is actually a great field and UI is everything these days. So sure there is a huge potential in that field.

  • @hpeterh
    @hpeterh 2 роки тому +18

    It is to mention for C++ Builder, it only supports Android 32 Bit besides Windows. Linux Support is only available in the extremely expensive Architekt and Enterprise Versions, and so far I know, only for Delphi and not for C++. The community version does not support Linux neither for Delphi nor for C++.

    • @wearesciber
      @wearesciber  2 роки тому +3

      Wow good to know, so it basically is unusable for a beginner for cross platform development 😂

  • @kirankokiwala4080
    @kirankokiwala4080 2 роки тому +5

    The content covers almost all major GUI but I believe that it would be good if you could mention GTKmm which is c++ port of GTK GUI.

  • @jackzugna5830
    @jackzugna5830 10 місяців тому +2

    I think Qt is the best choice, it is used everywhere and GUI written in QML is easily to export on other languages like Python and web assembly.
    Qt's versatility is amazing.
    Ps. Qt also works on microcontrollers. 🤯

    • @parko1965
      @parko1965 9 місяців тому +2

      I've got a UWP app running on an ARM based board.

    • @TheSlofish
      @TheSlofish 5 місяців тому +2

      @@parko1965 Ok but how is your mental health afterwards

  • @jurgenblick5491
    @jurgenblick5491 2 місяці тому +1

    When you push Qt it most of the times has problems cmakelist when loaded again. Countless I was starting thinking this Qt and when reload your project it has problems. Still trying to solve that

  • @gaurav.69420
    @gaurav.69420 2 роки тому +2

    Hey, you should make a video on how to connect your c++ app with php & my sql and work with that

  • @Alan_the_Red
    @Alan_the_Red 2 роки тому +1

    Wow what a cool channel!

  • @rretro2042
    @rretro2042 7 місяців тому

    There is also sciter that uses c in the backend but gui is developed using web technologies(html, css, js). It produces much lighter and faster apps compared to similar desktop frameworks that use web components like electron

  • @pleinair6318
    @pleinair6318 Рік тому

    You can make commercial apps with Qt if you use it under LGPLv3

  • @jurgenblick5491
    @jurgenblick5491 2 місяці тому

    C++Builder always gets results

  • @DungVu-di7dz
    @DungVu-di7dz 4 місяці тому

    - Qt: when Qt updated to version 5.57 they changed the content of their license, individual developers and small teams can no longer sell their products in binary form, so Qt is not an option
    - wxwidget: currently it is free, and I don't know when it will change its license content like Qt above
    - So now we have MFC, it's not cross-platform but it's still good and stable, it's free for individual developers and small teams

  • @goodwithnowings
    @goodwithnowings 2 роки тому

    actually i am afraid to choose the rt one, but when i watched your tutorial felt somewhat easy but still not sure about the file handlings and datastructures as i am used with only cpp/cli.

    • @wearesciber
      @wearesciber  2 роки тому +1

      There is something I couldn't include in this video and I made a video about it. It's C++/WinRT with WinUI3 check it out ua-cam.com/video/E860EbdZHbI/v-deo.html
      Also, there are plenty of other frameworks as well. I have plans to do videos on every one I can. But might take some time because I'm stuck with exams.
      For now, check out WinUI3 and WinForms and Qt

    • @goodwithnowings
      @goodwithnowings 2 роки тому

      @@wearesciber yeah sure👍

  • @Richardo2928
    @Richardo2928 9 місяців тому

    I'm learning raygui from raylib and I'm finding it very fun and useful (for university purposes).

    • @wearesciber
      @wearesciber  9 місяців тому +1

      Thats really interesting, how customizable is the UI?

    • @Richardo2928
      @Richardo2928 9 місяців тому +1

      @@wearesciber is quite customizable, as you can change the style, size, color, font, and icons of the various controls. You can also create your own custom controls using the raygui API. It's not industry standard but I like its simplicity

    • @wearesciber
      @wearesciber  9 місяців тому +1

      That's nice to hear, I also wanted to try a good simple immediate mode gui. Thanks for recommending.

    • @Richardo2928
      @Richardo2928 9 місяців тому

      @@wearesciber Just one piece of advice, it's somewhat challenging to learn how to use it as a beginner (very likely you are not), since there are no tutorials anywhere. But truth be told, once you grasp the concepts, it's simpler than some frameworks like Qt. That's when you start to have fun and unleash your creativity.

    • @wearesciber
      @wearesciber  9 місяців тому +1

      Thank you. Sounds like a fun ride 😸♥️

  • @jurgenblick5491
    @jurgenblick5491 2 місяці тому

    WinForms starts out great and something happens with some exceptions being thrown

  • @JasonCrawfordWilliams
    @JasonCrawfordWilliams 10 місяців тому

    C# Dot Net framework. I know lots of Markup languages and SQL MondoGB and I kill 2 birds with one stone as far as syntax synonymous with C# like Java and C++. Honors C# is great to know and master wish you all the best.

  • @javierchavez7151
    @javierchavez7151 9 місяців тому

    Perhaps it too late to comment.. but.. What About FLTK? and V (Libraries made by Bruce Wampler)? They are also cross platform.

  • @zawarudo1818
    @zawarudo1818 2 роки тому

    PLEASE TUTORIAL FOR CUSTOM USER CONTROLS IN C++ WINFORMS

  • @mohammedkamalalsyd9115
    @mohammedkamalalsyd9115 2 роки тому +3

    what about tutorial to build win32 from zero using vs?

    • @wearesciber
      @wearesciber  2 роки тому +3

      It is possible, but the time and effort is not worth it, you should not reinvent the wheel right? :)

  • @fredericarmoni8555
    @fredericarmoni8555 2 роки тому +3

    what about MFCs?

    • @wearesciber
      @wearesciber  2 роки тому

      its fine but majority do not recommend it to beginners because of a lot of reasons. since the video is focused on beginners, it seemed suitable to include only the ones that are worth learning and that are easy to get started. MFC has come to the point where it's worth learning if you are going to maintain some old codebase, in the future its more likely you would choose something from this list.

  • @Developer_Rohit_Choudhary
    @Developer_Rohit_Choudhary 3 місяці тому

    hello sir, which editing software are you using? please reply??????

    • @wearesciber
      @wearesciber  3 місяці тому

      I used after effects and premiere pro for this one.

  • @markbennett1237
    @markbennett1237 2 роки тому +1

    GTKmm?

  • @marclebrun
    @marclebrun 5 місяців тому

    This loop background music made me loose my mind ! 😆

  • @TheOPtmal
    @TheOPtmal 2 роки тому +1

    Where the hell is gtkmm?

  • @yash1152
    @yash1152 2 роки тому +1

    my picks will be 4:38 and 7:18 QT & wxWidgets

    • @FPChris
      @FPChris 2 роки тому

      I will NEVER try Qt again. Neeeeever.

    • @yash1152
      @yash1152 2 роки тому

      > _"I will NEVER try Qt again. Neeeeever."_
      @@FPChris reasons?

    • @hyblidblackbox8847
      @hyblidblackbox8847 2 роки тому

      @@yash1152 because Qt keep changing without notice(drop classes) and Qt uses not standard libs and not support Boost too.

    • @yash1152
      @yash1152 2 роки тому

      @@hyblidblackbox8847 oh ohkayh. I was soo hopefully looking towards learning Qt. But thanks for eye openers.
      So, any recommended alternates?

    • @hyblidblackbox8847
      @hyblidblackbox8847 2 роки тому

      @@yash1152 I stuck same here... I tried to do so many things. i think "ImGui" and "OpenGl" is best choice but hard to learn.

  • @CodeDaily29
    @CodeDaily29 Рік тому

    can in make windows app using macos or UNIX system??

    • @wearesciber
      @wearesciber  Рік тому

      Yes look up cross compilation

    • @CodeDaily29
      @CodeDaily29 Рік тому

      @@wearesciber Can you suggest me the best application

  • @leonielnacman1443
    @leonielnacman1443 2 роки тому

    On 5:20 , what software is it?

    • @wearesciber
      @wearesciber  2 роки тому +1

      Qt Designer/Creator
      I think it comes with the QT IDE. :)

    • @leonielnacman1443
      @leonielnacman1443 2 роки тому

      @@wearesciber oh, thank you.

  • @Seventro7
    @Seventro7 2 роки тому +1

    😃😃😃

  • @janindunimsara178
    @janindunimsara178 2 роки тому

    C# run කරන්න .net framework එක ඕනෙමද bro

    • @wearesciber
      @wearesciber  2 роки тому

      Yes

    • @janindunimsara178
      @janindunimsara178 2 роки тому

      @@wearesciber e kiyanne samanyen programming language ekakay framework ekaky syntax chuttak wenas ne ee wage .net waladi syntax wenas wenawada

    • @wearesciber
      @wearesciber  2 роки тому

      .net framework kiyanne set of libraries apis wage. Eke thama c# api igena ganna dewal wala implementation thiyenne. Saha .net walin thama ekata adala compiler eka labadenneth. C# language eke godak ma basic awasthawedith api use karanne .net eken kali aran...

  • @SENESH_lk
    @SENESH_lk 2 роки тому +1

    අයියේ ඔයා අර c++ basic කියල video ටිකක් දාල තියෙන්නේ එන යොදාගෙන ගෙම් එකක් හදන්න බැරිද

    • @wearesciber
      @wearesciber  2 роки тому +1

      එ ටිකෙන් නම් බැ. ඒකට frameworks එහෙම ඕනෙ nattan ගොඩක් අමාරුයි... :)

    • @SENESH_lk
      @SENESH_lk 2 роки тому +1

      @@wearesciber හා අයියේ 😍😍😍❤තැන්කිවු අැ අපිට මේ දෙවල් කියල දෙනවට

    • @wearesciber
      @wearesciber  2 роки тому +1

      😁♥️

  • @moarx25
    @moarx25 Рік тому

    Oh wow fellow Sri Lankan??

  • @zyx321123xyz
    @zyx321123xyz 2 роки тому +4

    MFC is the Best and For Ever!!!

    • @rv4tyler
      @rv4tyler 10 місяців тому

      I have not had the need for the Doc/View architecture, but MFC is pretty clean when starting with CWnd for your mainwnd. (VS 2022)

  • @45dipen
    @45dipen Рік тому

    Microsoft deprecated the Universal Windows Platform (UWP)

  • @mengenaltuhan1805
    @mengenaltuhan1805 Рік тому +1

    Gtk+

  • @DavisTibbz
    @DavisTibbz 8 місяців тому

    You forgot MAUI from Microsoft.

  • @wearesciber
    @wearesciber  2 роки тому +2

    Hi Guys, I recently made a channel for giving away design and video editing intel targeting primarily other content creators (you may remember me posting a poll on this). Please check it out. The Content right now is for the local Sinhala Audience, but as the channel grows, I'll decide whether to make English Videos as well.
    Kraftsmanship: ua-cam.com/channels/Nu0YSuyVAZI5miwXrnNmiQ.html

  • @sca255_loves_PCs
    @sca255_loves_PCs 5 місяців тому +1

    qt is not pronounced "cutee" but "cute"

    • @brandyballoon
      @brandyballoon 17 днів тому +1

      Yes many pronounce it like that, but many also don't like it pronounced like that, including me. Saying the letters individually makes it sound much more solid and less like a little joke.

    • @wearesciber
      @wearesciber  17 днів тому +1

      @BrandyBalloon yeah. Qt wants us to call it the Cute Framework, but we know it isn't. So...

  • @ahmadbodayr7203
    @ahmadbodayr7203 Рік тому

    The music is louder than you

  • @atlantic_love
    @atlantic_love 2 роки тому

    You can get the same information by googling for C++ gui toolkits, lol.

  • @Ali-Britco
    @Ali-Britco Рік тому

    Is... Is that a Sri Lankan accent I hear??

    • @wearesciber
      @wearesciber  Рік тому +1

      Haha lol, I don't know if that exists, but yeah I'm from Sri Lanka 👏

    • @Ali-Britco
      @Ali-Britco Рік тому +1

      @@wearesciber machaa! But seriously, I know what Indian accents are like...and we don't have it but more importantly....it was the humour ! That's spot on SL stuff, the only thing missing was a few sprinkles of aggressive "otherwise" thrown in to make it confirmed SL made 😛! Loved the video, keep making them!

    • @wearesciber
      @wearesciber  Рік тому +1

      🤣 will do ❤️

    • @wearesciber
      @wearesciber  Рік тому +1

      Watching this video now makes me cringe 😂

  • @chudchadanstud
    @chudchadanstud 11 місяців тому

    You have to pay for visual studio so most of these are a no starter. No. The community edition doesn't count, being at the mercy of Microsoft is simply borrowed time not freedom.

    • @wearesciber
      @wearesciber  11 місяців тому +1

      Ok

    • @chudchadanstud
      @chudchadanstud 11 місяців тому

      @@wearesciber yup

    • @wearesciber
      @wearesciber  11 місяців тому

      Care to explain what other options are available for beginners then?

    • @chudchadanstud
      @chudchadanstud 11 місяців тому

      @@wearesciber Most of the WinX stuff that relies heavily on msvc which requires you to fork cash for visual studio. The community edition of Visual Studio is pretty much a trap, it makes you dependant on Microsoft's tooling for C++ development which is never a good idea as you will go cross platform one day.
      You can do Win32 on gcc pretty easily but that is one painful framework. The other win frameworks are pretty much a deal breaker as they rely heavily on Visual Studio.
      Qt is pretty much the only friendly framework you have here that is good for beginners. You don't have to fork out a month fee to some corporation to get it to work on a project you are passionate about.

    • @chudchadanstud
      @chudchadanstud 11 місяців тому

      @@wearesciber It would be nice if there was a framework like the web stuff but on one language. I'm talking about having the css (styling), the js(event handling) and html(compositions) all in c++. Styling, Events and Composition is simply what GUIs boil down too but there is no framework that can do that in an elegant way like the web stuff.

  • @DungVu-di7dz
    @DungVu-di7dz 4 місяці тому

    Qt not free, 3k usd/year. Bye bye Qt