首頁(yè) > 計(jì)算機(jī)網(wǎng)絡(luò) > 編程語(yǔ)言與程序設(shè)計(jì) > Tkinter GUI Application Development Blueprints(Second Edition)
舉報(bào)

會(huì)員
Tkinter GUI Application Development Blueprints(Second Edition)
Thisbookisforabeginnertointermediate-levelPythonistswhowanttobuildmodern,cross-platformGUIapplicationswiththeamazinglypowerfulTkinter.PriorknowledgeofTkinterisrequired.
最新章節(jié)
- Leave a review - let other readers know what you think
- Other Books You May Enjoy
- QA section
- Summary
- Tkinter in Python 2.x
- Other options
品牌:中圖公司
上架時(shí)間:2021-06-24 17:54:53
出版社:Packt Publishing
本書(shū)數(shù)字版權(quán)由中圖公司提供,并由其授權(quán)上海閱文信息技術(shù)有限公司制作發(fā)行
- Leave a review - let other readers know what you think 更新時(shí)間:2021-06-24 18:35:52
- Other Books You May Enjoy
- QA section
- Summary
- Tkinter in Python 2.x
- Other options
- PyGTK
- PySide
- PyQt
- wxPython
- Alternatives to Tkinter
- Inactive development community
- No support for newer image formats
- No support for printing
- Non-Python objects
- A limited number of core widgets
- The limitations of Tkinter
- Other freezing tools
- PyInstaller
- py2app
- py2exe
- Distributing a Tkinter application
- Other optimization tips
- Profiling your program
- Optimizing variables
- Using filter and map
- Tips for program optimization
- Handling cross-platform differences
- Handling errors and exceptions
- Loose coupling
- The Single Responsibility Principle
- Naming variables and methods
- Selecting the right data structure
- Separating the model from the view
- The model-first policy versus the code-first policy
- Tips for program design
- The class hierarchy of Tkinter
- Redirecting the command-line output to Tkinter
- Building a font selector
- Finer control over font
- More on fonts
- Formatting widget data
- Focus-out validation mode demo
- Key validation mode demo
- Validating user input
- Widget traversal
- Tracing Tkinter variables
- Miscellaneous Tips
- Further reading
- QA section
- Summary
- Reading serial data
- Writing the Arduino sketch
- Hardware
- Interfacing with hardware/serial communication
- Using asyncio with Tkinter
- Deleting records
- Updating records
- Reading from the database
- Creating a new record
- Creating a phone book application
- Building a chat application
- Building a port scanner
- A simple socket demo
- Creating a Weather Reporter application
- Queue handler
- The Snake class
- The Food class
- The View class
- Building the Snake game
- Using queues
- Using synchronization primitives
- Understanding a race condition
- Building a Snake game
- Technical requirements
- Multiple Fun Projects
- Further reading
- QA section
- Summary
- 3D graphics with Tkinter
- Phyllotaxy
- Chaos game – building triangles out of randomness
- Spring pendulum simulation
- Voronoi diagrams
- Drawing fractals
- Gravity simulation
- Polar plots with Tkinter
- Graphing with Tkinter
- Building a screen saver
- Fun with Canvas
- Further reading
- QA section
- Summary
- Handling widget resize with <Configure>
- Experimenting with the code
- A note on window responsiveness
- Building the score maker
- Building the chord progression tutor
- Building the chord finder section
- Building the scales tutor
- Playing audio
- Putting the keyboard together
- Making the piano keyboard
- Putting up the skeleton structure
- Building the broad GUI structure
- Learning about chords
- Learning about scales
- A brief primer on piano terms
- Technical requirements
- Piano Tutor
- Further reading
- QA section
- Summary
- Adding functionality to menu items
- Adding functionality to the remaining buttons
- Drawing super shapes
- Drawing irregular lines
- Drawing irregular lines and super shapes
- Adding top bar options for draw methods
- Adding a color palette
- Drawing items on the canvas
- Adding toolbar buttons
- Dealing with mouse events
- Setting up a broad GUI structure
- Creating a tiny framework
- Overview of the application
- Paint Application
- Further reading
- QA section
- Summary
- Miscellaneous
- Dialogs
- Widgets
- Pmw list of extensions
- Adding a tooltip
- Looping over tracks
- Managing continuous updates
- One-time updates during audio playback
- Creating a seek bar
- Adding the volume change function
- Adding the next track/previous track function
- Fast forward/rewind function
- Adding the mute/unmute function
- Adding the pause/unpause function
- Adding the play/stop function
- Playing audio and adding audio controls
- Emptying the playlist
- Adding all files from a directory
- Removing the selected files from a playlist
- Adding a single audio file
- Adding and removing items from a playlist
- Creating the Player class
- Deciding the data structure
- Program structure and broadview skeleton
- Pmw Tkinter extension
- The pyglet module
- External library requirements
- An overview of the chapter
- Building an Audio Player
- Further reading
- QA section
- Summary
- Managing user preferences
- Keep game statistics
- Recording a move in the data structure
- Check whether a move will cause check on the King
- Pre-move validation
- Highlighting allowed moves
- Collecting a list of the moves that need to be highlighted
- Getting the source and destination position
- Making the game functional
- Checking whether the king is in check
- Finding out the current position of the king
- Tracking all available moves
- Movement validation of chess pieces
- Rules for a pawn
- Rules for the Knight
- Rules for the king queen rooks and bishops
- Defining rules for the chess pieces
- Displaying chess pieces on the chessboard
- Creating a Piece class
- Convention for naming locations on the chessboard
- Convention on naming chess pieces
- Modeling the data structure
- Structuring our program
- Module requirements for this chapter
- An overview of the chapter
- Game of Chess
- Further reading
- QA section
- Summary
- Working with ttk-themed widgets
- Saving beat patterns
- Support for multiple beat patterns
- Tkinter and thread safety
- Tkinter and threading
- Determining the tempo of a rhythm
- Playing complete patterns
- Initializing pygame
- Playing the drum machine
- Loading drum samples
- The number of units and beats per unit features
- Defining getter and setter methods
- Creating broader visual elements
- Finalizing the data structure
- Setting up the GUI in OOP
- Technical requirements
- Getting started
- Programmable Drum Machine
- Further reading
- QA section
- Summary
- Creating a context/pop-up menu
- Adding themes
- Adding the cursor information bar
- Displaying line numbers
- The icons toolbar and View menu functions
- Working with message boxes
- Working with forms and dialogs
- Types of Toplevel window
- Implementing the Find Text feature
- Implementing the Select All feature
- Tags
- Index
- Indexing and tagging
- Adding a built-in functionality
- Implementing the View menu
- Adding menu items
- Adding a menu and menu items
- Getting started – setting up the editor skeleton
- Project overview
- Making a Text Editor
- Further reading
- QA section
- Summary
- Getting interactive help
- Some common root window options
- Specifying styles
- Doing it in style
- Event unbinding and virtual events
- Handling widget-specific variables
- Binding levels
- Event patterns
- Event binding
- Limitations of the command option
- Passing arguments to callbacks
- Command binding
- Events and callbacks – adding life to programs
- The place geometry manager
- The grid geometry manager
- The pack geometry manager
- The Tkinter geometry manager
- Adding widgets to a parent window
- Getting to know the core Tkinter widgets
- Ways to create widgets
- Some important widget features
- Widgets – the building blocks of GUI programs
- The root window – your drawing board
- GUI programming – the big picture
- Getting started
- Project overview
- Technical requirements
- Meet Tkinter
- Reviews
- Get in touch
- Conventions used
- Download the color images
- Download the example code files
- To get the most out of this book
- What this book covers
- Who this book is for
- Preface
- Packt is searching for authors like you
- About the reviewer
- About the author
- Contributors
- PacktPub.com
- Why subscribe?
- Packt Upsell
- Title Page
- coverpage
- coverpage
- Title Page
- Packt Upsell
- Why subscribe?
- PacktPub.com
- Contributors
- About the author
- About the reviewer
- Packt is searching for authors like you
- Preface
- Who this book is for
- What this book covers
- To get the most out of this book
- Download the example code files
- Download the color images
- Conventions used
- Get in touch
- Reviews
- Meet Tkinter
- Technical requirements
- Project overview
- Getting started
- GUI programming – the big picture
- The root window – your drawing board
- Widgets – the building blocks of GUI programs
- Some important widget features
- Ways to create widgets
- Getting to know the core Tkinter widgets
- Adding widgets to a parent window
- The Tkinter geometry manager
- The pack geometry manager
- The grid geometry manager
- The place geometry manager
- Events and callbacks – adding life to programs
- Command binding
- Passing arguments to callbacks
- Limitations of the command option
- Event binding
- Event patterns
- Binding levels
- Handling widget-specific variables
- Event unbinding and virtual events
- Doing it in style
- Specifying styles
- Some common root window options
- Getting interactive help
- Summary
- QA section
- Further reading
- Making a Text Editor
- Project overview
- Getting started – setting up the editor skeleton
- Adding a menu and menu items
- Adding menu items
- Implementing the View menu
- Adding a built-in functionality
- Indexing and tagging
- Index
- Tags
- Implementing the Select All feature
- Implementing the Find Text feature
- Types of Toplevel window
- Working with forms and dialogs
- Working with message boxes
- The icons toolbar and View menu functions
- Displaying line numbers
- Adding the cursor information bar
- Adding themes
- Creating a context/pop-up menu
- Summary
- QA section
- Further reading
- Programmable Drum Machine
- Getting started
- Technical requirements
- Setting up the GUI in OOP
- Finalizing the data structure
- Creating broader visual elements
- Defining getter and setter methods
- The number of units and beats per unit features
- Loading drum samples
- Playing the drum machine
- Initializing pygame
- Playing complete patterns
- Determining the tempo of a rhythm
- Tkinter and threading
- Tkinter and thread safety
- Support for multiple beat patterns
- Saving beat patterns
- Working with ttk-themed widgets
- Summary
- QA section
- Further reading
- Game of Chess
- An overview of the chapter
- Module requirements for this chapter
- Structuring our program
- Modeling the data structure
- Convention on naming chess pieces
- Convention for naming locations on the chessboard
- Creating a Piece class
- Displaying chess pieces on the chessboard
- Defining rules for the chess pieces
- Rules for the king queen rooks and bishops
- Rules for the Knight
- Rules for a pawn
- Movement validation of chess pieces
- Tracking all available moves
- Finding out the current position of the king
- Checking whether the king is in check
- Making the game functional
- Getting the source and destination position
- Collecting a list of the moves that need to be highlighted
- Highlighting allowed moves
- Pre-move validation
- Check whether a move will cause check on the King
- Recording a move in the data structure
- Keep game statistics
- Managing user preferences
- Summary
- QA section
- Further reading
- Building an Audio Player
- An overview of the chapter
- External library requirements
- The pyglet module
- Pmw Tkinter extension
- Program structure and broadview skeleton
- Deciding the data structure
- Creating the Player class
- Adding and removing items from a playlist
- Adding a single audio file
- Removing the selected files from a playlist
- Adding all files from a directory
- Emptying the playlist
- Playing audio and adding audio controls
- Adding the play/stop function
- Adding the pause/unpause function
- Adding the mute/unmute function
- Fast forward/rewind function
- Adding the next track/previous track function
- Adding the volume change function
- Creating a seek bar
- One-time updates during audio playback
- Managing continuous updates
- Looping over tracks
- Adding a tooltip
- Pmw list of extensions
- Widgets
- Dialogs
- Miscellaneous
- Summary
- QA section
- Further reading
- Paint Application
- Overview of the application
- Creating a tiny framework
- Setting up a broad GUI structure
- Dealing with mouse events
- Adding toolbar buttons
- Drawing items on the canvas
- Adding a color palette
- Adding top bar options for draw methods
- Drawing irregular lines and super shapes
- Drawing irregular lines
- Drawing super shapes
- Adding functionality to the remaining buttons
- Adding functionality to menu items
- Summary
- QA section
- Further reading
- Piano Tutor
- Technical requirements
- A brief primer on piano terms
- Learning about scales
- Learning about chords
- Building the broad GUI structure
- Putting up the skeleton structure
- Making the piano keyboard
- Putting the keyboard together
- Playing audio
- Building the scales tutor
- Building the chord finder section
- Building the chord progression tutor
- Building the score maker
- A note on window responsiveness
- Experimenting with the code
- Handling widget resize with <Configure>
- Summary
- QA section
- Further reading
- Fun with Canvas
- Building a screen saver
- Graphing with Tkinter
- Polar plots with Tkinter
- Gravity simulation
- Drawing fractals
- Voronoi diagrams
- Spring pendulum simulation
- Chaos game – building triangles out of randomness
- Phyllotaxy
- 3D graphics with Tkinter
- Summary
- QA section
- Further reading
- Multiple Fun Projects
- Technical requirements
- Building a Snake game
- Understanding a race condition
- Using synchronization primitives
- Using queues
- Building the Snake game
- The View class
- The Food class
- The Snake class
- Queue handler
- Creating a Weather Reporter application
- A simple socket demo
- Building a port scanner
- Building a chat application
- Creating a phone book application
- Creating a new record
- Reading from the database
- Updating records
- Deleting records
- Using asyncio with Tkinter
- Interfacing with hardware/serial communication
- Hardware
- Writing the Arduino sketch
- Reading serial data
- Summary
- QA section
- Further reading
- Miscellaneous Tips
- Tracing Tkinter variables
- Widget traversal
- Validating user input
- Key validation mode demo
- Focus-out validation mode demo
- Formatting widget data
- More on fonts
- Finer control over font
- Building a font selector
- Redirecting the command-line output to Tkinter
- The class hierarchy of Tkinter
- Tips for program design
- The model-first policy versus the code-first policy
- Separating the model from the view
- Selecting the right data structure
- Naming variables and methods
- The Single Responsibility Principle
- Loose coupling
- Handling errors and exceptions
- Handling cross-platform differences
- Tips for program optimization
- Using filter and map
- Optimizing variables
- Profiling your program
- Other optimization tips
- Distributing a Tkinter application
- py2exe
- py2app
- PyInstaller
- Other freezing tools
- The limitations of Tkinter
- A limited number of core widgets
- Non-Python objects
- No support for printing
- No support for newer image formats
- Inactive development community
- Alternatives to Tkinter
- wxPython
- PyQt
- PySide
- PyGTK
- Other options
- Tkinter in Python 2.x
- Summary
- QA section
- Other Books You May Enjoy
- Leave a review - let other readers know what you think 更新時(shí)間:2021-06-24 18:35:52