Qt Programming

Qt is a multi-platform C++ application development framework. It has become the emerging standard development environment for IT professionals who want to write a single source-tree, port it to multiple platforms with a simple recompile, integrate it easily with Motif and ActiveXmulti-platformPre-Requisites
While the course is open to anyone who wants to learn Qt, attendees should have significant experience in C++ to derive maximum benefit from the course.

Target Audience
Students and Programmers developing applications for desktops, embedded devices and/or targeting multiple platforms - Windows, Unix and Mac will greatly benefit from this training.

Course Outline

Module 1

Introduction to Qt

GUI toolkits and cross-platform libraries
About Qt and Qt Library
Qt Object Model
Qt Programming issues
Parent/Child relationship & Exploring Qt Library
A whirlwind tour of all Qt classes
Project 1: A Sample Qt Program

Module 2

User interaction to Qt application
Concept of Inter-object communication
Linking user interaction
Overview Signals and Slots
Project 2: Connecting signals and slots

Module 3

Custom Widgets
Qt Meta Object System
Concepts of Custom Widgets
Extending a Qt class.
Writing custom slots and custom signals
Project 3: Implementing a custom widget.

Module 4

Geometry Management
Basic geometry management system, Geometry()...etc.,
Layout Management,
QHBox, QVBox, Spacers and QLayout
Grid Layouts.
Project 4: A Simple program with geometry management.

Module 5

Qt Event System
Introduction to event system
Working with different event systems.
QMouseEvents, Event filters
Basic 2D Drawing
Project 5: A simple paint program

Module 6

More about colors and drawing.
About Dialogs
Predefined Qt Dialogs
Implementing a Custom Dialog box
Project 6: A help browser dialog

Module 7

Scroll Areas
Working with Stretching.
Printing Dialogs
Main Window and actions
Project 7: A hand made text editor program.

Qt Tools

(All Tools are Explained with Project Examples)

1.qmake Reference
Installing and using qmake
qmake’s advanced concepts

2.Qt Designer
Using Qt Designer
Creating Main Window applications
Creating custom widgets and dialogs
Creating a Database Application

3. Qt Linguist

Using Qt Linguist
Internationalization
Making an application a i18n

4. 3D Grapinhs using OpenGL

OpenGL with Qt
OpenGL Class reference
Qt’s Advanced Concepts
Writing plugins
Text Processing
Mutithreading & Network Programming
External Processes with Qprocess
Qt Debugging Techniques
Discussion on Qt
Question and Answers