Book Image

Pyside GUI Application Development- Second Edition - Second Edition

By : Venkateshwaran Loganathan, Gopinath Jaganmohan
Book Image

Pyside GUI Application Development- Second Edition - Second Edition

By: Venkateshwaran Loganathan, Gopinath Jaganmohan

Overview of this book

Elegantly-built GUI applications are always a massive hit among users. PySide is an open source software project that provides Python bindings for the Qt cross-platform UI framework. Combining the power of Qt and Python, PySide provides easy access to the Qt framework for Python developers and also acts as an excellent rapid application development platform. This book will take you through everything you need to know to develop UI applications. You will learn about installing and building PySide in various major operating systems as well as the basics of GUI programming. The book will then move on to discuss event management, signals and slots, and the widgets and dialogs available with PySide. Database interaction and manipulation is also covered. By the end of this book, you will be able to program GUI applications efficiently and master how to develop your own applications and how to run them across platforms.
Table of Contents (13 chapters)

Connecting to the database


A database connection is represented by the PySide.QtSql.QSqlDatabase class. This class provides an interface to access a database through the connection. The connection is accomplished through Qt's supported database drivers, which are derived from the PySide.QtSql.QSqlDriver class. The QSqlDriver class is an abstract base class to access specific SQL Databases and should be used with QSqlDatabase. As with any other PySide feature that supports customization, it is also possible to create our own SQL drivers by subclassing the QSqlDriver class and reimplementing its virtual functions.

Before explaining the concept of connecting to databases, we will look at the types of database access that is provided by PySide. The access is provided at two levels, a high-level access using QSqlTableModel or QSqlRelationalTableModel, and a low-level access using QSqlQuery. The former one uses model/view architecture and provides a high-level interface from which to read and write...