![[入門] Qt 6プログラミング1編강의 썸네일](https://cdn.inflearn.com/public/courses/326732/cover/9cda2d92-c82c-474b-810e-58e5cc25bc51/커버이미지_Qt 6 프로그래밍_1편.png?w=420)
[入門] Qt 6プログラミング1編
qtdev
Qtを使用すると、さまざまなオペレーティングシステムで互換性のあるSWを開発できます。つまり、一度Qtで開発したソースコードで、さまざまなプラットフォームで動作するSWを開発できます。
입문
Qt, GUI
Qt is a powerful framework that provides not only GUI but also various functions such as network, database, multimedia, IPC, etc., so you can easily and quickly develop applications in various fields with Python. In this lecture, we will learn how to effectively utilize Qt in Python through various examples starting from the basics of Qt.
You can learn in depth how to develop applications in a variety of fields with Python by leveraging Qt's extensive API.
Learn techniques for quickly and efficiently developing applications in a variety of fields with Python using Qt.
You can learn how to implement a GUI in Python using Qt.
This course is systematically structured to enable you to develop various GUI applications using Qt and Python, and you can learn various essential technologies in practice.
Building a Basic GUI : Starting with setting up a basic Qt development environment, learn how to implement a simple GUI application yourself.
Utilizing core functions : We cover core functions required in practice, such as event processing through signals and slots, various resource management and multilingual support, database linkage, and network communication.
Acquire advanced skills : Learn the skills required to develop advanced applications, such as 2D graphics using QPainter, chroma key image processing, and custom widget creation.
GUI development using Qt (1)
Qt (PySide6) allows you to easily implement sophisticated GUIs in Python.
Huge API (2)
You can easily implement advanced applications through a wide range of APIs covering a wide range of fields including networks, multimedia, IPC, and databases.
Support for various tools (3)
Qt's powerful GUI, multilingual support, and resource management tools make it easy to build high-quality applications.
Desktop Applications : Develop GUI applications that can be used in data visualization tools, business software, etc.
Industrial Software : Applications include IoT management systems, production management tools, and communication applications, with the ability to interface with networks and databases.
Cross-platform applications : Qt's cross-platform support allows you to create installer distributions that run on Windows, macOS, Linux, and more.
Practice-oriented training structure (1)
It is designed to allow learners to naturally learn the features of Qt and Python while coding themselves, with a balanced mix of theory and practice. Each section covers examples and applications frequently used in practice, so that you can apply them to real projects right after learning.
Comprehensive Qt Feature Learning (2)
You can learn in depth a wide range of Qt features, from basic GUI development to advanced features such as Custom Widgets, networks, multilingual support, database integration, and chroma key image processing, so you can acquire skills that can be applied in various fields.
Curriculum suitable for various applications (3)
We offer a curriculum that covers desktop applications, IoT, industrial software, and cross-platform deployment, so that both beginners and advanced developers can learn in a way that suits their field of interest.
Modular Learning Approach (4)
Each feature is divided into sections, so you can selectively learn the parts you need. You can explore key features such as Signal and Slot, Qt Designer, resource system, and data input/output individually and use them immediately as needed.
Building an environment similar to actual development (5)
You can learn in an environment similar to an actual development site, starting from setting up the Visual Studio Code and Qt development environment to creating a distribution, and upon completing the course, you will gain practical experience in completing and distributing your own GUI application.
Section 1. Starting the lecture
Before this lecture, this section provides an overview of the entire learning process. This section provides an introduction to the instructor and summarizes the main content to be learned in each section, so that you can understand the overall flow of the lecture.
Section 2. Lecture Materials
This section provides all the example source code files used in the lectures starting from Section 3 in a compressed file, and you can download the files. This section is provided for the purpose of providing materials, not as part of the lecture.
Section 3. Setting up the development environment
In this section, we will delve deeper into how to set up a development environment for Python programming with Qt. We will also look at how to use Visual Studio Code as an IDE for writing source code.
Section 4. Getting started with Qt programming
Learn simple GUI programming in Python based on Qt. This will help you build a solid foundation for effectively leveraging Qt in Python.
Section 5. Signal and Slot
Signals and Slots are Qt's core event handling mechanism. A signal indicates that a specific event has occurred, and a slot is a function that handles that event. For example, you will learn how a signal that occurs when a button is clicked and the associated slot function work.
Section 6. Qt Resources
The Qt Resource System provides the ability to integrate various resources (images, icons, sounds, etc.) required by an application into an executable file. This system simplifies file path management and improves security and performance. In this section, you will learn how to utilize this resource system.
Section 7. Qt Designer
Qt Designer is a tool that lets you intuitively design the user interface of Qt applications. It maximizes the efficiency of UI design by arranging widgets and adjusting their properties using drag-and-drop. In this section, you will learn how to design GUIs using Qt Designer.
Section 8. GUI Programming Using Style Sheets
Qt Style Sheet is a powerful tool for fine-tuning the appearance of UI elements. It allows you to define styles for buttons, text, and layouts using a CSS-like syntax. In this section, you will learn how to use Qt Style Sheet.
Section 9. Implementing a Multilingual Application
Qt provides features that make it easy to develop multilingual applications. In this section, you will learn how to develop applications that support multiple languages by utilizing Qt's multilingual tools.
Section 11. QMainWindow
QMainWindow is a class suitable for implementing structured GUI in desktop environments. You will learn how to effectively manage standardized GUI elements such as menus, toolbars, main widgets, and status bars.
Section 10. Layout
Layout provides functionality to efficiently arrange widgets in Qt and dynamically adjust them as the screen size changes. In this section, you will learn about various Layout features in Qt.
Section 12. Model/View
Qt's Model/View structure provides powerful capabilities for visually representing large amounts of data in a variety of formats. In this section, you will learn how to utilize the Model and View provided by Qt.
Section 13. File I/O and STREAM Processing
In this section, we will learn how to input and output files using QFile, and how to use QDataStream and QTextStream to efficiently process large amounts of data.
Section 14. 2D Graphics using QPainter
The QPainter class is used to draw 2D graphic elements in QWidget. Learn in-depth techniques for displaying shapes, lines, text, and images.
Section 15. QPainter in Practice - Chroma Key Image Processing
Learn QPainter in depth by replacing the color of a specific background image with another image using the chroma key technique. This will help you deepen your understanding of QPainter.
Section 16. Implementing a Timer
Learn how to call a specific function at set intervals using the QTimer class and see a practical example of event-based programming.
Section 17. Thread Programming
Learn how to easily perform thread programming by utilizing Qt's thread-related classes, and learn how to implement threads that satisfy re-entrancy in a multi-threaded environment.
Section 18. Custom Widget
Learn how to create Custom Widgets to implement UI elements that cannot be expressed with existing widgets, and also acquire techniques for implementing non-standard windows.
Section 19. Database
Qt provides a unified API for accessing a variety of databases. In this section, you will learn how to work with a variety of databases, including MySQL, MS-SQL, Oracle, and SQLite, using Qt's database API.
Section 20. XML
Learn how to easily process XML data using Qt's XML module. Learn XML data handling techniques using SAX and DOM.
Section 21. JSON
Learn how to efficiently process JSON data using Qt's JSON module and increase your understanding of the JSON format.
Section 22. Printer Support
Learn how to print text or images on a printer, and acquire skills in implementing output applications through integration with an actual printer.
Section 23. Network
Learn how to easily develop TCP/IP-based network applications using the Qt Network module. Covers real-world examples using TCP and UDP protocols.
Section 24. Creating an installation distribution for distribution of developed SW
In this section, we will learn in depth how to convert Python source code into an executable file and how to create installers for various platforms using the Qt Install Framework.
A lecture that considers real-life situations
The lectures are designed to help you improve your practical skills. After learning the theory of each section, there are classes where you can learn by implementing practical examples according to the lectures, so you can improve your practical skills.
Focus Up with Vivid Live Coding
The appearance of a knowledge sharer is captured on the lecture screen. Learn anytime, anywhere as if you were taking an offline class through a class that is conducted with vivid live coding.
Question 1: Why should I use Qt and Python together?
Answer: Qt is a powerful GUI toolkit that provides a wide range of features and tools, making it ideal for building intuitive and elegant user interfaces. Python is an easy-to-learn and highly productive language, which, when combined with Qt, allows for fast development while creating powerful applications. In other words, it’s the perfect combination for developing flexible and powerful programs by combining the rich features of Qt with the simplicity of Python!
Question 2: What background knowledge is required for this course?
Answer: Basic Python programming knowledge is sufficient. Don't worry if you don't have GUI programming experience! The lecture explains the basics step by step, so you can follow along slowly even if there are difficult parts in the middle. Just like learning to cook for the first time, we will prepare the ingredients, learn the recipe, and go through the process of creating a delicious result.
Question 3: What kind of projects can I create after class?
Answer: After completing the course, you will be able to create a personalized note app, a data visualization tool, or even a control program for IoT devices! Use your imagination. Add various functions to suit your needs, implement multilingual support, and you will have your own cool application. Plus, you will be able to create a 'my masterpiece' to show off to your friends!
Question 4: Is there anything that I will find difficult if I am new to Qt?
Answer: It may seem a bit complicated at first, but don't worry, I'll be with you! Qt's structure and terminology may be unfamiliar, but I'll help you understand it by slowly breaking it down into parts. I'll guide you through the process of putting together each piece as if you were putting together a puzzle to create a complete picture. We'll overcome the difficult parts together, and by the end, you'll be a Qt expert!
Operating System and Version (OS): This course is conducted on the Windows operating system, but can also be used in various environments such as macOS, Linux, and Ubuntu. However, we recommend using Windows.
We have set aside time during class to install the software needed to build a development environment, so all you need to prepare is a computer and operating system.
After taking the course, you can download all the example source code for this course in Section 2 as a study reference.
If you have any questions or concerns during class or if there is anything you do not understand, please do not hesitate to ask questions. The process of discussing and solving problems together will be of great help in your learning.
Who is this course right for?
Anyone who wants to implement a GUI in Python using Qt
Anyone who wants to implement APIs in various fields easily and quickly in Python
Need to know before starting?
Basic Python programming knowledge: You need to understand Python's basic syntax and data structures (lists, dictionaries, etc.), function definitions, and calls. With this basic knowledge, you can easily approach programming using Qt.
958
Students
84
Reviews
99
Answers
4.7
Rating
9
Courses
근무경력
현: Embedded 분야 SW Team leader
LG전자, VS사업부 IVI선행플랫폼/모듈개발
SW마에스트로, SW 멘토
강의경력
삼성전자, Qt & QML 강의
LG전자, Qt & QML 분야 사내 강사
한컴아카데미 Qt 강의 출강
다수의 IT기업 Qt 강의 출강
저서
Qt 프로그래밍
Qt Quick 프로그래밍
Qt5 프로그래밍 가이드
MeeGo 프로그래밍 완벽 가이드
Qt 실전 프로그래밍
SW커뮤니티 운영
Qt 개발자 커뮤니티 운영자 ( www.qt-dev.com )
All
93 lectures ∙ (13hr 52min)
Course Materials:
All
5 reviews
4.8
5 reviews
Reviews 1
∙
Average Rating 5.0
5
プロジェクトで簡単に Qt を触り、 無理やり GPT を回して、機能や実装原理も知らないまま使っていたら、偶然に渇望していたような講義を見つけてすぐに支払いました。 うまく使えば本当に良いプログラムですが....使い方を教えてくれる人や講義、本がないので本当に途方に暮れていました。 Python ベースの GUI を自分のやり方で作りたい方、また、少し熟練したら機能モジュールとデザイナーモジュールを分離してメンテナンスしたい方は、Level2 まで受講することをお勧めします。 実際、私は Level2 を見て Level1 講義を受けていますが、基礎的な内容を知ろうと検索してみましたが、 Qt 関連の動画も少なく、あるものは非常に古く、動画の内容通り現在のバージョンでコードが動作するかどうか疑問でした。関連書籍も探してみましたが、出ている本も英語の原書か、エントリ段階で触れるレベルではありませんでした。 この講義は、ほぼ唯一(?)の更新される Qt 講義ではないでしょうか。 家電製品とデリバリーは、いずれ買うことになるから時間の問題だと言いますが、 私はこの講義シリーズを、家電製品とデリバリーの次に時間の問題にしたいです 😊😊 心から講義の準備をしてくださった講師の先生に感謝し、 受講生のみなさんも一生懸命勉強して良い結果が出ますように!
こんにちは。lightstone87 さん、とても過分な良い評価をいただき、本当にありがとうございます。^^;
Reviews 1
∙
Average Rating 5.0
Reviews 1
∙
Average Rating 4.0
Reviews 1
∙
Average Rating 5.0
Edited
Check out other courses by the instructor!
Explore other courses in the same field!