Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Udemy

Qt 6 C++ GUI Development for Beginners : The Fundamentals

via Udemy

Overview

Build Cross Platform Desktop Applications and Run Them on Windows, Mac and Linux. Build once, Run Everywhere!

What you'll learn:
  • The fundamentals of working with Qt to build C++ Gui Applications
  • Working with Qt Widget Classes
  • Working with Dialog Classes
  • Using the Qt Resource System
  • Styling Qt Applications
  • Working with Networks to fetch HTTP Data
  • Working with the File System
  • Model View Architecture

Welcome to Qt 6 C++ GUI Development for Beginners.

Qt is a cross platform application development framework. It can be used to build Graphical User interfaces that can run on Windows, Mac Linux , mobile platforms like android and ios, even embedded devices.

This course will focus on using Qt Widgets to build robust cross platform desktop applications capable of running well on major desktop Operating Systems like Windows , Mac and Linux.

While Qt Widgets can technically run both on mobile and embedded, it's better and less painful to use QML, another technology provided by the Qt framework. If you want to target mobile and embedded, then please check our courses on QML and Qt Quick. This course doesn't QML , Mobile or embedded!

The course assumes no prior knowledge of Graphical User Interface Development and even provides a C++ refresher crash course for those in need of a helping hand to get up and running with C++ within the Qt environment. By the time you are done with the course, you'll not only be armed with knowledge you could use to build basic to intermediate Graphical user interfaces, but you will also have enough momentum to use the documentation to even learn more on your own. As with my other courses, I use every chance I get to show you how to use the documentation to find solutions on your own and faster.

Let's take a look at the content of the course.

We start with a complete beginner to both C++ and Qt in mind, and we take you through the the process of getting your environment set up on your platform of choice :

  • We do a live install of Qt Creator on Windows

  • We do a live install of Qt Creator on Linux

  • We guide you though how you would install Qt Creator on a Mac

We then take you on a tour of the C++ programming language, covering the concepts deemed important to start working with Qt to build your shinny GUI applications. You don't need to be a C++ wizard to start writing your applications using Qt. One of the goals behind Qt itself is to be as easy to use as possible, helping you to focus on your application logic rather than the C++ complex plumbing. This does not mean that you can do with zero C++ knowledge though. That's why we take you on a tour to cover the basic concepts of the language covering topicslike:

  • Running your first console application and understanding the main function

  • Streams that help you write and read data from your C++ applications

  • Variables and DataTypes

  • Basic C++ Operators and Control flow where among other things you learn about if clauses and loops

  • Build an app to guess numbers and put together the concepts learned so far

  • C++ Functions

  • C++ classes

  • Building your first Qt C++ GUIApplication

  • Building a GUI Version of your Number guessing game

We then visit the fascinating concept signals and slots in Qt where you learn the most flexible way to respond to events :

  • We'll explore lambda functions in C++ in general, we'll need them to use their SIGNAL SLOT syntax

  • We explore different ways to connect signals to slots in Qt

  • We then do a concept enforcing demo for you to try them out

Next we dive in the Qt Widgets section and visit some of the most important widget classes in Qt :

  • QWidget

  • QMainWindow

  • QMessageBox

  • QPushButton

  • QLineEdit

  • QTextEdit

  • QLabel

  • QHBoxLayout, QVBoxLayout, QGridLayout

  • We visit size policies and stretches and how they help tie the knots in your layouts

  • QCheckBox and QRadioButton

  • QList

  • QComboBox

  • QListWidget

  • QTabWidget

  • QMenu, QToolBar, QAction

Dialogs are explored next , we look at QDialog and how to build your own custom dialog class from scratch , QDialogButtonBox, QMessageBox, QFontDialog, QFileDialog, QInputDialog and how they add a layer of interactivity to your Qt GUI applications.

We then go on and explore how to work with the Qt Resource System , Styling your Qt applications with QStyle, QPalette and Style Sheets, Saving your application settings with QSetting, Working with Files and Directories using QFile and QDir, working with the network capabilities of Qt where we :

  • See the different classes that are available to work with networks in Qt

  • Build an application to download web pages in our Qt Applications

  • Build an application to consume Rest APIs in your Qt Applications

and we wrap up the course looking at the Model View Architecture of the Qt framework where we learn about classes like

  • QListWidget

  • QTableWidget

  • QTreeWidget

  • QListView

  • QTableView

  • QTreeView

  • QStandardItemModel

  • QAbstractItemTableModel

  • QAbstractItemListModel

  • QStringListModel

  • and much more!

Qt has quite a huge user base and there are thousands of projects using both open source and commercial, including the one I am using to record this video right now. If you want to build cross platform graphical user interface applications using C++, this course is designed with the skill, patience and depth, needed to get you there as effisciently as possible. Please check out some of the preview videos and let's get you started building cross platform GUI applications using C++ and Qt 6.

Taught by

Daniel Gakwaya

Reviews

4.5 rating at Udemy based on 429 ratings

Start your review of Qt 6 C++ GUI Development for Beginners : The Fundamentals

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.