Rapid GUI Programming with Python and Qt
Prentice Hall (Verlag)
978-0-13-235418-9 (ISBN)
- Titel ist leider vergriffen;
keine Neuauflage - Artikel merken
With Rapid GUI Programming with Python and Qt you'll learn how to build efficient GUI applications that run on all major operating systems, including Windows, Mac OS X, Linux, and many versions of Unix, using the same source code for all of them. Summerfield systematically introduces every core GUI development technique: from dialogs and windows to data handling; from events to printing; and more. Through the book's realistic examples you'll discover a completely new PyQt 4-based programming approach, as well as coverage of many new topics, from PyQt 4's rich text engine to advanced model/view and graphics/view programming. Every key concept is illuminated with realistic, downloadable examples—all tested on Windows, Mac OS X, and Linux with Python 2.5, Qt 4.2, and PyQt 4.2, and on Windows and Linux with Qt 4.3 and PyQt 4.3.
Coverge includes
Python basics for every PyQt developer: data types, data structures, control structures, classes, modules, and more
Core PyQt GUI programming techniques: dialogs, main windows, and custom file formats
Using Qt Designer to design user interfaces, and to implement and test dialogs, events, the Clipboard, and drag-and-drop
Building custom widgets: Widget Style Sheets, composite widgets, subclassing, and more
Making the most of Qt 4.2's new graphics/view architecture
Connecting to databases, executing SQL queries, and using form and table views
Advanced model/view programming: custom views, generic delegates, and more
Implementing online help, internationalizing applications, and using PyQt's networking and multithreading facilities
Mark Summerfield works as an independent trainer and consultant specializing in C++, Qt, Python, and PyQt. He was Trolltech’s documentation manager from 2000 to 2004, was the founding editor of Qt Quarterly, Trolltech’s customer newsletter, and coauthored C++ GUI Programming with Qt 3 and C++ GUI Programming with Qt 4.
Foreword xiiiIntroduction 1Part I: Python Programming Chapter 1. Data Types and Data Structures 9Executing Python Code 10
Variables and Objects 12
Numbers and Strings 15
Collections 29
Built-in Functions 37
Summary 41
Exercises 42
Chapter 2. Control Structures 45Conditional Branching 46
Looping 49
Functions 55
Exception Handling 66
Summary 72
Exercises 72
Chapter 3. Classes and Modules 75Creating Instances 77
Methods and Special Methods 79
Inheritance and Polymorphism 99
Modules and Multifile Applications 104
Summary 107
Exercises 108
Part II: Basic GUI Programming Chapter 4. Introduction to GUI Programming 111A Pop-Up Alert in 25 Lines 112
An Expression Evaluator in 30 Lines 116
A Currency Converter in 70 Lines 121
Signals and Slots 127
Summary 136
Exercise 137
Chapter 5. Dialogs 139Dumb Dialogs 141
Standard Dialogs 147
Smart Dialogs 154
Summary 162
Exercise 163
Chapter 6. Main Windows 165Creating a Main Window 166
Handling User Actions 190
Summary 201
Exercise 202
Chapter 7. Using Qt Designer 205Designing User Interfaces 208
Implementing Dialogs 216
Testing Dialogs 221
Summary 223
Exercise 224
Chapter 8. Data Handling and Custom File Formats 227Main Window Responsibilities 229
Data Container Responsibilities 235
Saving and Loading Binary Files 240
Saving and Loading Text Files 249
Saving and Loading XML Files 256
Summary 265
Exercise 266
Part III: Intermediate GUI Programming Chapter 9. Layouts and Multiple Documents 269Layout Policies 270
Tab Widgets and Stacked Widgets 272
Splitters 280
Single Document Interface(SDI) 283
Multiple Document Interface(MDI) 290
Summary 300
Exercise 301
Chapter 10. Events, the Clipboard, and Drag and Drop 303The Event-Handling Mechanism 303
Reimplementing Event Handlers 305
Using the Clipboard 310
Drag and Drop 312
Summary 317
Exercise 318
Chapter 11. Custom Widgets 321Using Widget Style Sheets 322
Creating Composite Widgets 325
Subclassing Built-in Widgets 326
Subclassing QWidget 328
Summary 345
Exercise 346
Chapter 12. Item-Based Graphics 349Custom and Interactive Graphics Items 351
Animation and Complex Shapes 368
Summary 378
Exercise 379
Chapter 13. Rich Text and Printing 381Rich Text Editing 382
Printing Documents 398
Summary 411
Exercise 412
Chapter 14. Model/View Programming 413Using the Convenience Item Widgets 415
Creating Custom Models 423
Creating Custom Delegates 436
Summary 442
Exercise 443
Chapter 15. Databases 445Connecting to the Database 446
Executing SQL Queries 446
Using Database Form Views 451
Using Database Table Views 457
Summary 470
Exercise 471
Part IV: Advanced GUI Programming Chapter 16. Advanced Model/View Programming 475Custom Views 476
Generic Delegates 483
Representing Tabular Data in Trees 492
Summary 505
Exercise 505
Chapter 17. Online Help and Internationalization 509Online Help 510
Internationalization 512
Summary 519
Exercise 520
Chapter 18. Networking 521Creating a TCP Client 523
Creating a TCP Server 529
Summary 534
Exercise 534
Chapter 19. Multithreading 537Creating a Threaded Server 539
Creating and Managing Secondary Threads 544
Implementing a Secondary Thread 552
Summary 557
Exercise 558
This Is Not Quite the End 559
Appendix A. Installing 561Appendix B. Selected PyQt Widgets 575Appendix C. Selected PyQt Class Hierarchies 581Index 585
Erscheint lt. Verlag | 29.10.2007 |
---|---|
Reihe/Serie | Prentice Hall Open Source Software Development Series |
Verlagsort | Upper Saddle River |
Sprache | englisch |
Maße | 184 x 234 mm |
Gewicht | 1160 g |
Themenwelt | Mathematik / Informatik ► Informatik ► Betriebssysteme / Server |
Informatik ► Programmiersprachen / -werkzeuge ► Python | |
Mathematik / Informatik ► Informatik ► Software Entwicklung | |
Mathematik / Informatik ► Informatik ► Web / Internet | |
ISBN-10 | 0-13-235418-7 / 0132354187 |
ISBN-13 | 978-0-13-235418-9 / 9780132354189 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich