33
Qt3 – C++ GUI Library Starters Guide Carlos Vázquez Hurtado Barcelona, july.12.2006

Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Embed Size (px)

Citation preview

Page 1: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Qt3 – C++ GUI Library

Starters Guide

Carlos Vázquez Hurtado

Barcelona, july.12.2006

Page 2: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

1. Introduction2. Qt Installation1.1. How to get Qt1.2. How to install Qt1.2. How to Set Microsoft Visual C++ to work with Qt3. Sample Code

Some introductory code4. Compilation4.1. How to compile under MSVC4.2. How to compile under Linux5. Further reading and examples 5.1. References5.2. Examples

1. Introduction2. Qt Installation1.1. How to get Qt1.2. How to install Qt1.2. How to Set Microsoft Visual C++ to work with Qt3. Sample Code

Some introductory code4. Compilation4.1. How to compile under MSVC4.2. How to compile under Linux5. Further reading and examples 5.1. References5.2. Examples

Outline

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 3: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

Qt is a multiplatform C++ GUI toolkit created and maintained byTrolltech. It provides application developers with all the functionality needed to build applications with state-of-the-art graphical user interfaces. Qt is fully object-oriented, easily extensible, and allows true component programming.

Since its commercial introduction in early 1996, Qt has formed the basis of many thousands of successful applications worldwide. Qt is also the basis of the popular KDE Linux desktop environment, a standard component of all major Linux distributions.

Qt is a multiplatform C++ GUI toolkit created and maintained byTrolltech. It provides application developers with all the functionality needed to build applications with state-of-the-art graphical user interfaces. Qt is fully object-oriented, easily extensible, and allows true component programming.

Since its commercial introduction in early 1996, Qt has formed the basis of many thousands of successful applications worldwide. Qt is also the basis of the popular KDE Linux desktop environment, a standard component of all major Linux distributions.

About Qt

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 4: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

Qt is supported on the following platforms:

• MS/Windows -- 95, 98, NT 4.0, ME, 2000, and XP • Unix/X11 -- Linux, Sun Solaris, HP-UX, Compaq Tru64 UNIX,

IBM AIX, SGI IRIX and a wide range of others • Macintosh -- Mac OS X

Qt is supported on the following platforms:

• MS/Windows -- 95, 98, NT 4.0, ME, 2000, and XP • Unix/X11 -- Linux, Sun Solaris, HP-UX, Compaq Tru64 UNIX,

IBM AIX, SGI IRIX and a wide range of others • Macintosh -- Mac OS X

Multiplatform

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 5: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

Qt is released in different editions:

• The Qt Enterprise Edition and the Qt Professional Edition provide for commercial software development. They permit traditional commercial software distribution and include free upgrades and Technical Support.

• The Qt Educational Edition• The Qt Free Edition

Qt is released in different editions:

• The Qt Enterprise Edition and the Qt Professional Edition provide for commercial software development. They permit traditional commercial software distribution and include free upgrades and Technical Support.

• The Qt Educational Edition• The Qt Free Edition

License

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 6: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

1. How to get the program1.1. From Trollech’s webpage1.2. From the IOC’s Intranet

2. How to install the program2.1. Windows Installation2.2. Debian Linux Installation

3. How to configure the programMSVC configuration

1. How to get the program1.1. From Trollech’s webpage1.2. From the IOC’s Intranet

2. How to install the program2.1. Windows Installation2.2. Debian Linux Installation

3. How to configure the programMSVC configuration

Installation

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 7: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

1. From Trollech’s webpage (Win/Linux)

http://www.trollech.com

2. From the IOC’s Intranet (Win)

mana\\ioc\soft\qt

3. Linux pre-build distributions.

1. From Trollech’s webpage (Win/Linux)

http://www.trollech.com

2. From the IOC’s Intranet (Win)

mana\\ioc\soft\qt

3. Linux pre-build distributions.

How to get the program

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 8: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

1. Windows installation

Once you got the program, execute the setup and follow theinstructions. IOC students are provided with educational license.

2. Debian Linux installation

$ apt-get install libqt3-dev$ apt-get install qt3-examples

1. Windows installation

Once you got the program, execute the setup and follow theinstructions. IOC students are provided with educational license.

2. Debian Linux installation

$ apt-get install libqt3-dev$ apt-get install qt3-examples

How to install the program

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 9: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

1. Register Environment Variables2. Open MSVC and create a new Workspace and an empty project3. Set qtmain.lib qt-mtedu322.lib libraries4. Set configurartion directories

1. Register Environment Variables2. Open MSVC and create a new Workspace and an empty project3. Set qtmain.lib qt-mtedu322.lib libraries4. Set configurartion directories

MSVC Configuration

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 10: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 11: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

1. Register Environment Variables2. Open MSVC and create a new Workspace and an empty project3. Set qtmain.lib qt-mtedu322.lib libraries4. Set configurartion directories

1. Register Environment Variables2. Open MSVC and create a new Workspace and an empty project3. Set qtmain.lib qt-mtedu322.lib libraries4. Set configurartion directories

MSVC Configuration

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 12: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 13: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 14: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

1. Register Environment Variables2. Open MSVC and create a new Workspace and an empty project3. Set qtmain.lib qt-mtedu322.lib libraries4. Set configurartion directories

1. Register Environment Variables2. Open MSVC and create a new Workspace and an empty project3. Set qtmain.lib qt-mtedu322.lib libraries4. Set configurartion directories

MSVC Configuration

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 15: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 16: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

1. Register Environment Variables2. Open MSVC and create a new Workspace and an empty project3. Set qtmain.lib qt-mtedu322.lib libraries4. Set configurartion directories

1. Register Environment Variables2. Open MSVC and create a new Workspace and an empty project3. Set qtmain.lib qt-mtedu322.lib libraries4. Set configurartion directories

MSVC Configuration

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 17: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 18: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

1. What a Widget is (QtDesigner)2. C++ Code1. What a Widget is (QtDesigner)2. C++ Code

Sample Code

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 19: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 20: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

1. What a Widget is (QtDesigner)2. C++ Code1. What a Widget is (QtDesigner)2. C++ Code

Sample Code

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 21: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 22: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 23: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 24: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

1. How to compile under MSVC

2. How to compile under Linux

1. How to compile under MSVC

2. How to compile under Linux

Compilation

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 25: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 26: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

1. How to compile under MSVC

2. How to compile under Linux

1. How to compile under MSVC

2. How to compile under Linux

Compilation

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 27: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 28: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

$ qmake -o Makefile main.pro

$ make

$ qmake -o Makefile main.pro

$ make

Linux compilation

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 29: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 30: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 31: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

Documentation

http://www.trollech.com

Some UPC available books

• Blanchette, Jasmin, Mark Summerfield; C++ GUI programming with Qt3. Upper Saddle River Prentice Hall cop. 2004.

• Matthias Kalle Dalheimer, Jesper K. Pedersen, et al. Practical Qt real world solutions to real world problems. Heidelberg dpunktcop. 2004.

• Solin, Daniel. Sams teach yourself Qt programming in 24 hours. Indianapolis, Ind. SAMS cop. 2000.

Documentation

http://www.trollech.com

Some UPC available books

• Blanchette, Jasmin, Mark Summerfield; C++ GUI programming with Qt3. Upper Saddle River Prentice Hall cop. 2004.

• Matthias Kalle Dalheimer, Jesper K. Pedersen, et al. Practical Qt real world solutions to real world problems. Heidelberg dpunktcop. 2004.

• Solin, Daniel. Sams teach yourself Qt programming in 24 hours. Indianapolis, Ind. SAMS cop. 2000.

References

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 32: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

There are over 80 very good examples included with qt3. There are over 80 very good examples included with qt3.

Examples

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006

Page 33: Qt3 – C++ GUI Library - Tecaibo.tol.itesm.mx/cvazquez/sotoro2006/slides/qt.pdf · Introduction Installation Sample Code Compilation Further reading and examples Qt- C++ GUI library

Introduction Installation Sample Code Compilation Further reading and examples

Qt- C++ GUI library

Thanks!!

UPC-IOC-Carlos Vázquez, Barcelona july.12.2006