
Download and install the latest Qt using the online installer, create a Qt account, and set up a desktop project in Qt Creator to start building high graphic C++ applications.
Learn to display the main graphical user interface window by building an app manager in C++, configuring the window with a central widget and vertical box layout, then showing it.
Add a title label displaying screen recorder and a record button to the window with Qt5, style them with font size and color, and place them in the layout.
Connect the record button to a click signal and open a file dialog choosing a save location. Retrieve the output file path using get save file name and start recording.
Learn to build a two-function screen recorder in C++ with Qt, using a video recorder class and FFmpeg to capture desktop audio and video, then stop to save mp4.
Display the main window for a Qt C++ GUI by configuring the application, creating a password manager, and organizing widgets with a central widget and a vertical layout.
Create a password table to store service name, username, and password using a QTableWidget; define a password model class with three read-only columns and selectable rows.
Add three control buttons to the password table: add, copy, remove. Attach them to a horizontal box layout and connect clicks to add password, copy password, and remove password functions.
Populate a three-column password table by storing service names and username–password pairs in a qmap, collecting data via input dialogs, and enabling copy to clipboard and removal.
Add a master password feature by hashing the input with a cryptographic hash sha-256, verifying it through a password dialog, and unlocking the password table only when correct.
learn to implement data persistence for c++ gui app by saving and loading passwords on relaunch with master password, using data persistence class, file storage, and table widget.
Create and display the main gui window by building an app manager, a main window with a central widget and vertical box layout, then run with the executable method.
Add a tab widget and labels to schedule keeper interface, display each day of week with a placeholder schedule message, and arrange content using a vertical box layout.
Create a schedule widget by adding a dedicated sketch widget file that uses a scroll area, vertical box layout, and an add button to manage schedules for specific days.
Display a dialog window triggered by the add button to set date, time, and details for a scheduled event, using a vertical layout with a horizontal ok and cancel button.
Explore showing schedule events on the main window by capturing time and details, storing them in a sketch data structure, and refreshing the UI with removable entries.
Implement data persistence to save all sketch worlds to a file using a data stream and load them when the app restarts, enabling seamless restoration of saved sketches.
Add a title label and a screenshot button to the main window, display 'screen screenshot application', center the label, and style with font size and color via a style sheet.
Create an app manager to build and display the main window with a central widget and vertical box layout, set the title and size, then show the window.
Place a title label and a screenshot button on the main window, display the screen screenshot application name, and style them before adding to the main layout.
Connect the save button to a click signal, open a file dialog to choose a save directory, and name the screenshot with a timestamp using a dedicated screenshot handler.
Implement a screenshot feature triggered by pressing the T key: minimize the main window, wait 0.5 seconds, capture the primary screen, save a timestamped png, and restore the window.
Create and display the main graphical user interface window using an app manager to assemble a window, central widget, and vertical box layout; run it with the application's executable method.
Add three labels (title, instruction, file name) and two buttons on the application main window, styling with alignment and style sheets to form an MP4 to MP3 converter interface.
Connect the select button to a click signal that opens a file dialog filtered for mp4 files and displays the selected file path in a label.
Learn how to implement a convert button that extracts audio from an mp4 to mp3 using ffmpeg in a C++ Qt GUI, including file selection, save dialog, and process handling.
Create the main window with an application class and app manager, using a central widget and vertical box layout, then set the title, resize, and show via the executable method.
Apply Qt widgets to build a user interface: add labels, push buttons, and a formats combo box; style, layout, and reveal the convert button when a file is chosen.
Connect a select button to a file dialog window, filter image files, and display the chosen path while showing a convert button for later processing.
Build a gui image converter in c++ using oop concepts, implementing a conversion format class and file info handling to save as jpeg or bmp with status updates.
Create and wire the main window with an app manager, set the window title and size, and assemble a central widget using a vertical box layout.
Use a combo box to filter regions (default all time zones) and a read-only table with headers time zone, current time, and UTC offset, featuring a stretchable last column.
populate a table widget with time zones, current time, and utc offsets using QTimeZone and QDateTime, with region filtering from a combobox and live updates.
Learn to build a C++ GUI app with OOP concepts that shows live time updates across world time zones using a timer-driven table update.
Develop a GUI calendar app window by creating a Qt main window with a calendar widget, using a vertical box layout, initialized in main.cpp, and managed by a calendar manager.
Add note functionality to the calendar by introducing a text area for each date, store notes in a date-keyed QMap, and clear the field when a new date is selected.
Add a save button to store notes by date in a qmap, show a confirmation, and prepare for cross-session persistence in the next part.
Add data persistence by saving and loading nodes to a file using a dedicated data persistence module, handling current date keys, ISO date formats, and a notes.txt file.
Display a gui window in a c++ project by setting up a main window, central widget, and vertical layout, then show the window using the application class.
Create a digital clock component by using a label and a timer to update the current time every second, then integrate the widget into the app manager.
Develop an analog clock widget in C++ using OOP concepts with Qt, including a dedicated analog clock class, a paint event override, and center-aligned integration in the main window.
Use QPainter to render a smooth analog clock face by centering, scaling to 200×200, drawing a white ellipse, and adding 12 black hour ticks with a 30-degree rotation loop.
Build a GUI clock in C++ by drawing hour, minute, and second hands, rotating them with the current time and updating every second via a timer.
Welcome to "Mastering GUI Development: Build 10 Practical C++ Applications with OOP," a comprehensive journey into modern C++ programming and graphical user interface (GUI) design. This course is your definitive guide to transforming theoretical C++ knowledge into tangible, real-world applications. Moving beyond the command-line interface, you'll learn how to build interactive, visually appealing software that users will love. By focusing on Object-Oriented Programming (OOP) principles, we’ll not only build functional applications but also learn how to write clean, maintainable, and scalable code.
In today's software development landscape, C++ remains an indispensable language for high-performance computing, game development, and system-level applications. However, its power is often hidden behind complex syntax and a steep learning curve. This course is designed to flatten that curve by showing you how to harness C++'s capabilities to create practical, user-friendly software. You'll gain hands-on experience with some of the most popular and powerful GUI frameworks available, allowing you to choose the best tool for any future project.
The Core Philosophy: Learning by Doing
Our philosophy is simple: the best way to learn is by building. This course is not a series of passive lectures. Instead, it's a project-based curriculum where each application serves as a new chapter in your development journey. We'll start with the foundational concepts of GUI programming and gradually move to more complex, feature-rich applications. Each project is carefully selected to teach you a new set of skills, from file handling and data management to event-driven programming and system-level interactions.
This course bridges the gap between C++ theory and practical software development by guiding you through the step-by-step creation of 10 fully-functional GUI applications. Along the way, you will learn how to properly structure your code using OOP principles such as classes, inheritance, encapsulation, and polymorphism — all while building useful tools like password managers, screen recorders, and more.
Whether you're a beginner who's comfortable with the basics of C++, or an intermediate developer looking to level up your GUI and OOP skills, this course is for you.