ORPP logo

Python GUI Programming - a Complete Reference Guide : (Record no. 11556)

MARC details
000 -LEADER
fixed length control field 11523nam a22005053i 4500
001 - CONTROL NUMBER
control field EBC5799082
003 - CONTROL NUMBER IDENTIFIER
control field MiAaPQ
005 - DATE AND TIME OF LATEST TRANSACTION
control field 20240724113810.0
006 - FIXED-LENGTH DATA ELEMENTS--ADDITIONAL MATERIAL CHARACTERISTICS
fixed length control field m o d |
007 - PHYSICAL DESCRIPTION FIXED FIELD--GENERAL INFORMATION
fixed length control field cr cnu||||||||
008 - FIXED-LENGTH DATA ELEMENTS--GENERAL INFORMATION
fixed length control field 240724s2019 xx o ||||0 eng d
020 ## - INTERNATIONAL STANDARD BOOK NUMBER
International Standard Book Number 9781838982102
Qualifying information (electronic bk.)
020 ## - INTERNATIONAL STANDARD BOOK NUMBER
Canceled/invalid ISBN 9781838988470
035 ## - SYSTEM CONTROL NUMBER
System control number (MiAaPQ)EBC5799082
035 ## - SYSTEM CONTROL NUMBER
System control number (Au-PeEL)EBL5799082
035 ## - SYSTEM CONTROL NUMBER
System control number (OCoLC)1108519945
040 ## - CATALOGING SOURCE
Original cataloging agency MiAaPQ
Language of cataloging eng
Description conventions rda
-- pn
Transcribing agency MiAaPQ
Modifying agency MiAaPQ
050 #4 - LIBRARY OF CONGRESS CALL NUMBER
Classification number QA76.9.U83 .M667 2019
082 0# - DEWEY DECIMAL CLASSIFICATION NUMBER
Classification number 005.437
100 1# - MAIN ENTRY--PERSONAL NAME
Personal name Moore, Alan D.
245 10 - TITLE STATEMENT
Title Python GUI Programming - a Complete Reference Guide :
Remainder of title Develop Responsive and Powerful GUI Applications with Pyqt and Tkinter.
250 ## - EDITION STATEMENT
Edition statement 1st ed.
264 #1 - PRODUCTION, PUBLICATION, DISTRIBUTION, MANUFACTURE, AND COPYRIGHT NOTICE
Place of production, publication, distribution, manufacture Birmingham :
Name of producer, publisher, distributor, manufacturer Packt Publishing, Limited,
Date of production, publication, distribution, manufacture, or copyright notice 2019.
264 #4 - PRODUCTION, PUBLICATION, DISTRIBUTION, MANUFACTURE, AND COPYRIGHT NOTICE
Date of production, publication, distribution, manufacture, or copyright notice ©2019.
300 ## - PHYSICAL DESCRIPTION
Extent 1 online resource (730 pages)
336 ## - CONTENT TYPE
Content type term text
Content type code txt
Source rdacontent
337 ## - MEDIA TYPE
Media type term computer
Media type code c
Source rdamedia
338 ## - CARRIER TYPE
Carrier type term online resource
Carrier type code cr
Source rdacarrier
505 0# - FORMATTED CONTENTS NOTE
Formatted contents note Cover -- FM -- Copyright -- About Packt -- Contributors -- Table of Contents -- Preface -- Chapter 1: Introduction to Tkinter -- Introducing Tkinter and Tk -- Choosing Tkinter -- Installing Tkinter -- Installing Python 3 on Windows -- Installing Python 3 on macOS -- Installing Python 3 and Tkinter on Linux -- Introducing IDLE -- Using the shell mode of IDLE -- Using the editor mode of IDLE -- IDLE as a Tkinter example -- Creating a Tkinter Hello World -- Creating a better Hello World Tkinter -- Summary -- Chapter 2: Designing GUI Applications with Tkinter -- A problem at ABQ AgriLabs -- Assessing the problem -- Gathering information about the problem -- What you found out -- Information about the data being collected -- Information about the users of the application -- Documenting specification requirements -- Contents of a simple specification -- Writing the ABQ data entry program specification -- Designing the application -- Exploring Tkinter input widgets -- Grouping our fields -- Laying out the form -- Laying out the application -- Summary -- Chapter 3: Creating Basic Forms with Tkinter and ttk Widgets -- Evaluating our technology choices -- Choosing a technology -- Exploring Tkinter widgets -- The Entry widget -- The Spinbox widget -- The Combobox widget -- The Checkbutton widget -- The Text widget -- The Button widget -- The LabelFrame widget -- Implementing the application -- Saving some time with a LabelInput class -- Building the form -- Adding LabelFrame and other widgets -- Retrieving data from our form -- Resetting our form -- Building our application class -- Saving to CSV -- Finishing and testing -- Summary -- Chapter 4: Reducing User Error with Validation and Automation -- Validating user input -- Strategies to prevent data errors -- Validation in Tkinter -- Creating a DateEntry widget -- Implementing validated widgets in our form.
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note Exploiting the power of multiple inheritance -- A validating mixin class -- Building our widgets -- Requiring data -- A Date widget -- A better Combobox widget -- A range-limited Spinbox widget -- Dynamically adjusting the Spinbox range -- Updating our form -- Displaying errors -- Preventing form submission on error -- Automating input -- Inserting a date -- Automating Lab, Time, and Technician -- Summary -- Chapter 5: Planning for the Expansion of Our Application -- Separating concerns -- The MVC pattern -- What is a model? -- What is a view? -- What is a controller? -- Why complicate our design? -- Structuring our application directory -- Basic directory structure -- The abq_data_entry.py file -- The README.rst file -- ReStructuredText -- Populating the docs folder -- Making a Python package -- Splitting our application into multiple files -- Creating the models module -- Moving the widgets -- Moving the views -- Removing redundancy in our view logic -- Creating the application file -- Running the application -- Using version control software -- A super-quick guide to using Git -- Initializing and configuring a Git repository -- Adding and committing code -- Viewing and using our commits -- Summary -- Chapter 6: Creating Menus with Menu and Tkinter Dialogs -- Solving problems in our application -- Deciding how to address these problems -- Implementing simple Tkinter dialogs -- Tkinter messagebox -- Showing the error dialogs -- Designing our menu -- Creating menus in Tkinter -- Implementing our application menu -- Showing an About dialog -- Adding the menu functionality in the controller -- Handling file selection -- Making our settings work -- Persisting settings -- Building a model for settings persistence -- Using the settings model in our application -- Summary -- Chapter 7: Navigating Records with Treeview.
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note Implementing read and update in the model -- Adding read and update to our model -- Implementing  get_all_records() -- Implementing  get_record() -- Adding update to save_record() -- Implementing a record list view -- The ttk Treeview -- Implementing our record list with Treeview -- Configuring a Treeview widget -- Adding a scrollbar -- Populating the Treeview -- Responding to record selection -- Modifying the record form for read and update -- Updating __init__() -- Adding a load_record() method -- Updating the rest of the application -- Main menu changes -- Connecting the pieces in Application -- Adding the RecordList view -- Moving the model -- Populating the record list -- Adding the new callbacks -- Cleaning up -- Testing our program -- Summary -- Chapter 8: Improving the Look with Styles and Themes -- Working with images in Tkinter -- Tkinter PhotoImage -- Adding the company logo -- Setting our Window icon -- Styling Tkinter widgets -- Widget color properties -- Using widget properties on our form -- Using tags -- Styling our record list with tags -- Tkinter fonts -- Giving users font options -- Styling Ttk widgets -- Exploring a Ttk widget -- Styling our form labels -- Styling input widgets on error -- Making our Spinbox a Ttk widget -- Updating ValidatedMixin -- Setting themes -- Building a theme selector -- Summary -- Chapter 9: Creating Automated Tests with unittest -- Automated testing basics -- A simple unit test -- The unittest module -- Writing a test case -- TestCase assertion methods -- Fixtures -- Using Mock and patch -- Running multiple unit tests -- Testing Tkinter code -- Managing asynchronous code -- Simulating user actions -- Specifying an event sequence -- Managing focus and grab -- Getting widget information -- Writing tests for our application -- Testing our model -- Testing file reading in get_all_records().
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note Testing file saving in save_record() -- More tests -- Testing our application -- Testing our widgets -- Unit testing the ValidatedSpinbox widget -- Integration testing the ValidatedSpinbox widget -- Testing our mixin class -- Summary -- Chapter 10: Improving Data Storage with SQL -- PostgreSQL -- Installing and configuring PostgreSQL -- Connecting with psycopg2 -- SQL and relational database basics -- Basic SQL operations -- Syntax differences from Python -- Defining tables and inserting data -- Retrieving data from tables -- Updating rows, deleting rows, and more WHERE clauses -- Subqueries -- Joining tables -- Learning more -- Modeling relational data -- Normalization -- The entity-relationship diagrams -- Assigning data types -- Creating the ABQ database -- Creating our tables -- Creating the lookup tables -- The lab_checks table -- The plot_checks table -- Creating a view -- Integrating SQL into our application -- Creating a new model -- Adjusting the Application class for the SQL backend -- Building a login window -- Using the login window -- Fixing some model incompatibilities -- DataRecordForm creation -- Fixing the open_record() method -- Fixing the on_save() method -- Creating new callbacks -- Updating our views for the SQL backend -- The data record form -- The record list -- Last changes -- Summary -- Chapter 11: Connecting to the Cloud -- HTTP using urllib -- Basic downloading with urllib.request -- Creating a download function -- Parsing XML weather data -- Implementing weather data storage -- Creating the SQL table -- Implementing the SQLModel.add_weather_data() method -- Updating the SettingsModel class -- Adding the GUI elements for weather download -- HTTP using requests -- Installing and using requests -- The requests.session() fucntion -- The response objects -- Implementing API upload -- Creating a test HTTP service.
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note Creating our network function -- Updating application -- Updating the models.py file -- Finishing up -- FTP using ftplib -- Basic concepts of FTP -- Creating a test FTP service -- Implementing the FTP upload function -- Listing files -- Retrieving files -- Deleting or renaming files -- Adding FTP upload to the GUI -- Summary -- Chapter 12: Visualizing Data Using the Canvas Widget -- Drawing and animation with Tkinter's Canvas -- Animating Canvas objects -- Creating our objects -- Animating the racers -- Detecting and handling a win condition -- Creating simple graphs on the canvas -- Creating the model method -- Creating the graph view -- Updating the application -- Advanced graphs using Matplotlib and Tkinter -- Data model method -- Creating the bubble chart view -- Application method -- Summary -- Chapter 13: Creating a User Interface with Qt Components -- Introduction -- PyQt -- Ways of creating GUI applications -- Displaying a welcome message -- Understanding the Label widget -- Methods -- Understanding the Line Edit widget -- Methods -- Understanding the Push Button widget -- How to do it... -- How it works... -- Using the Radio Button widget -- Understanding Radio Button -- Methods -- Signal description -- How to do it... -- How it works... -- Grouping radio buttons -- Getting ready -- How to do it... -- How it works... -- Displaying options in the form of checkboxes -- Getting ready -- Method application -- Signal description -- How to do it... -- How it works... -- Displaying two groups of checkboxes -- Getting ready -- How to do it... -- How it works... -- Chapter 14: Event Handling - Signals and Slots -- Introduction -- Using Signal/Slot Editor -- How to do it... -- Copying and pasting text from one Line Edit widget to another -- Getting ready -- How to do it... -- How it works... -- Converting data types and making a small calculator.
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note How to do it.
520 ## - SUMMARY, ETC.
Summary, etc. This Learning Path guides you through every concept necessary to create fully functional GUI applications using PyQt and Tkinter with only a few lines of code. You'll learn to design and build GUIs that are functional, appealing, and user-friendly using the powerful combination of Python and its GUI frameworks.
588 ## - SOURCE OF DESCRIPTION NOTE
Source of description note Description based on publisher supplied metadata and other sources.
590 ## - LOCAL NOTE (RLIN)
Local note Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2024. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
650 #0 - SUBJECT ADDED ENTRY--TOPICAL TERM
Topical term or geographic name entry element Graphical user interfaces (Computer systems).
650 #0 - SUBJECT ADDED ENTRY--TOPICAL TERM
Topical term or geographic name entry element Python (Computer program language).
655 #4 - INDEX TERM--GENRE/FORM
Genre/form data or focus term Electronic books.
700 1# - ADDED ENTRY--PERSONAL NAME
Personal name Harwani, B. M.
776 08 - ADDITIONAL PHYSICAL FORM ENTRY
Relationship information Print version:
Main entry heading Moore, Alan D.
Title Python GUI Programming - a Complete Reference Guide
Place, publisher, and date of publication Birmingham : Packt Publishing, Limited,c2019
International Standard Book Number 9781838988470
797 2# - LOCAL ADDED ENTRY--CORPORATE NAME (RLIN)
Corporate name or jurisdiction name as entry element ProQuest (Firm)
856 40 - ELECTRONIC LOCATION AND ACCESS
Uniform Resource Identifier <a href="https://ebookcentral.proquest.com/lib/orpp/detail.action?docID=5799082">https://ebookcentral.proquest.com/lib/orpp/detail.action?docID=5799082</a>
Public note Click to View

No items available.

© 2024 Resource Centre. All rights reserved.