PROGRAMMING WITH QT
Schedules

Course Learning Objectives:

  • A working knowledge of the capabilities and limitations of Qt
  • Experience in programming with Qt
  • Course slides and sample programs
  •  

    Course Availability:

  • Open Enrollment
  • On-site
  •  

    Course Prerequisites:

  • Working knowledge of C++ programming
  • Basic knowledge of GUI programming
  • Previous Qt experience is not required
  •  

    Duration:

  • 5 days
  •  

    Course Outline:
    Qt Fundamentals:
    Fundamentals of Qt:

  • The Story of Qt
  • Developing a Hello World Application
  • Hello World using Qt Creator
  • Practical Tips for Developers
  •  

    Objects and Core Types:
    Core Classes:

  • String Handling
  • Container Classes
  • File Handling
  • Objects:

  • Qt’s Object Model
  • Variants
  • Properties
  • Object Communication:

  • Signals & Slots
  • Event Handling
  •  

    Widgets and Designer:
    Widgets:

  • Designer Introduction
  • Common Widgets
  • Layout Management
  • Guidelines for Custom Widgets
  • Dialogs:

  • Dialogs
  • Common Dialogs
  • Designer Forms and Code Integration
  •  

    Applications and Painting:
    Application Creation:

  • Main Windows
  • Designer: Main Windows, Menus, and Actions
  • Settings
  • The System Clipboard
  • Drag and Drop
  • Resources
  • Translation for Developers
  • Deploying Qt Applications
  • Painting and Styling:

  • Painting on Widgets
  • Color Handling
  • Painting Operations
  • Style Sheets
  •  

    Models and Views:
    Model/View:

  • Model/View Concept
  • Showing Simple Data
  • Proxy Models
  • Custom Models
  • Model/View II:

  • Delegates
  • Editing item data
  • Data Widget Mapper
  • Drag and Drop
  • Custom Tree Models
  •  

    Graphics View:
    Graphics View:

  • Using GraphicsView Classes
  • Coordinate Systems and Transformations
  • Creating Custom Items
  • Graphics View 2:

  • Widgets in a Scene
  • Drag and Drop
  • Effects
  • Performance Tuning
  •  

    Other Topics:
    Animation:

  • Starting Animation
  • Animation Groups
  • States and Animations
  • Events and Transitions
  •  

    Qt Additional Models:
    MultiThreaded Programming and Multimedia in Qt:
    Multithreaded Programming:

  • Qt Multithreading
  • Threading Primitives
  • Qt Concurrent
  • Multimedia Programming:

  • Qt Multimedia
  •  

    Inter-Process Communication:
    Interprocess Communication:

  • QProcess
  • Shared Memory with Qt
  • Network Programming
  • QNetworkAccessManager Request/Reply
  • Bearer Management API
  • TCP/UDP Sockets
  • SSL Sockets
  • DNS and Proxies
  • QtDBus – Qt Bindings to D-Bus
  • QtDBus – Advanced Topics
  •  

    Other Topics:
    Extending Qt with Plugins:

  • Qt Plugins
  • Plugin Example: Custom Image Formats
  • Data Processing:

  • Basic XML APIs
  • SQL Database API
  • SQL Models
  • XML Patterns:

  • XPath, XQuery and XSLT
  • QtXmlPatterns
  • XML Schema