Cover image for Tkinter GUI Application Development Hotshot.
Tkinter GUI Application Development Hotshot.
Title:
Tkinter GUI Application Development Hotshot.
Author:
Chaudhary, Bhaskar.
ISBN:
9781849697958
Personal Author:
Physical Description:
1 online resource (453 pages)
Contents:
Tkinter GUI Application Development HOTSHOT -- Table of Contents -- Tkinter GUI Application Development HOTSHOT -- Credits -- About the Author -- About the Reviewers -- www.PacktPub.com -- Support files, eBooks, discount offers, and more -- Why Subscribe? -- Free Access for Packt account holders -- Preface -- What this book covers -- What you need for this book -- Who this book is for -- Conventions -- Reader feedback -- Customer support -- Downloading the example code -- Errata -- Piracy -- Questions -- 1. Meet Tkinter -- Mission Briefing -- Why Is It Awesome? -- Your Hotshot Objectives -- Mission Checklist -- The root window - your drawing board -- Engage Thrusters -- Objective Complete - Mini Debriefing -- Classified Intel -- The big picture -- Widgets - building blocks for your GUI program -- Engage Thrusters -- Objective Complete - Mini Debriefing -- Classified Intel -- Getting to know core Tkinter widgets -- Prepare for Lift Off -- Engage Thrusters -- Objective Complete - Mini Debriefing -- Classified Intel -- Geometry management -- Prepare for Lift Off -- Engage Thrusters -- The pack geometry manager -- The grid geometry manager -- The place geometry manager -- Objective Complete - Mini Debriefing -- Events and callbacks - adding life to programs -- Engage Thrusters -- Command binding -- Passing arguments to the callback -- Event binding -- Event pattern -- Levels of binding -- Handling widget-specific variables -- Objective Complete - Mini Debriefing -- Classified Intel -- Doing it in style -- Prepare for Lift Off -- Engage Thrusters -- Objective Complete - Mini Debriefing -- Mission Accomplished -- A Hotshot Challenge -- 2. Making a Text Editor like Notepad -- Mission Briefing -- Why Is It Awesome? -- Your Hotshot Objectives -- Setting up the widgets -- Prepare for Lift Off -- Engage Thrusters -- Objective Complete - Mini Debriefing.

Leveraging the power of built-in Text widget options -- Engage Thrusters -- Objective Complete - Mini Briefing -- Indexing and tagging -- Prepare for Lift Off -- Index -- Tags -- Engage Thrusters -- Objective Complete - Mini Briefing -- Classified Intel -- Working with forms and dialogs -- Prepare for Lift Off -- Engage Thrusters -- Objective Complete - Mini Briefing -- Working with message boxes -- Prepare for Lift Off -- Engage Thrusters -- Objective Complete - Mini Briefing -- The icon toolbar and View menu functions -- Engage Thrusters -- Objective Complete - Mini Briefing -- Event handling and the context menu -- Engage Thrusters -- Objective Complete - Mini Briefing -- Mission Accomplished -- A Hotshot Challenge -- 3. Programmable Drum Machine -- Mission Briefing -- Why Is It Awesome? -- Your Hotshot Objectives -- Mission Checklist -- Setting up the GUI in OOP -- Prepare for Lift Off -- Engage Thrusters -- Objective Complete - Mini Debriefing -- Completing the pattern editor -- Engage Thrusters -- Objective Complete - Mini Debriefing -- Loading drum samples -- Engage Thrusters -- Objective Complete - Mini Debriefing -- Playing the drum machine -- Prepare for Lift Off -- Engage Thrusters -- Objective Complete - Mini Debriefing -- Classified Intel -- Tkinter and threading -- Prepare for Lift Off -- Engage Thrusters -- Objective Complete - Mini Debriefing -- More beat patterns -- Engage Thrusters -- Objective Complete - Mini Debriefing -- Object persistence -- Prepare for Lift Off -- Engage Thrusters -- Objective Complete - Mini Debriefing -- ttk-themed widgets -- Prepare for Lift Off -- Engage Thrusters -- Objective Complete - Mini Debriefing -- Mission Accomplished -- A Hotshot Challenge -- 4. Game of Chess -- Mission Briefing -- Why Is It Awesome? -- Your Hotshot Objectives -- Mission Checklist -- Structuring our program -- Prepare for Lift Off.

Engage Thrusters -- Step 1 - creating the GUI class -- Step 2 - creating the chessboard -- Step 3 - creating Tkinter mainloop -- Objective Complete - Mini Debriefing -- Classified Intel -- Structuring chessboard-and-pieces-related data -- Prepare for Lift Off -- Engage Thrusters -- Step 1 - creating a Piece superclass -- Step 2 - creating individual child classes for all pieces -- Step 3 - defining a method to return the piece instance -- Step 4 - creating the Board class -- Step 5 - displaying pieces on board for a given FEN notation -- Step 6 - checking if a given coordinate is on the board -- Step 7 - generating alphabetic and numeric notation -- Step 8 - checking places occupied on the board -- Step 9 - handling errors and exceptions -- Objective Complete - Mini Debriefing -- Adding pieces on the board -- Prepare for Lift Off -- Engage Thrusters -- Step 1 - importing PIL -- Step 2 - defining method to draw pieces on chessboard -- Objective Complete - Mini Debriefing -- Enforcing rules for pieces' movement -- Prepare for Lift Off -- Engage Thrusters -- Step 1 - tracking moves available for all pieces from Pieces superclass -- Step 2 - rules for the king, queen, rook and bishop class -- Step 3 - rules for knight -- Step 4 - rules for pawn -- Objective Complete - Mini Debriefing -- The chessboard logic -- Engage Thrusters -- Step 1: Tracking all Available Moves -- Step 2: Getting Current Position of King -- Step 3: Verifying if King is under Check -- Objective Complete - Mini Debriefing -- Making the chess functional -- Engage Thrusters -- Step 1 - updating the board for change in FEN notation -- Step 2 - binding mouse click event -- Step 3 - adding attribute to track selected piece and remaining pieces -- Step 4 - identifying square clicked -- Step 5 - getting the source and destination position -- Step 6 - collecting list of moves to highlight.

Step 7 - modifying draw_board to highlight allowed moves -- Step 8 - defining attributes to keep game statistics -- Step 9 - preshift validations -- Step 10 - actual movement of pieces -- Step 11 - Post movement updates -- Step 12 - classes to handle exceptions and errors -- Objective Complete - Mini Debriefing -- Adding menu and an info frame -- Engage Thrusters -- Step 1 - creating top menu -- Step 2 - adding the bottom frame to display game statistics -- Step 3 - starting a new game from File

Objective Complete - Mini Debriefing -- Classified Intel -- Adding the top display console -- Prepare for Lift Off -- Engage Thrusters -- Step 1 - creating the top console and progress bar -- Step 2 - getting the total duration of a track -- Step 3 - updating console at launch of play -- Step 4 - updating timer clock and progress bar at regular intervals -- Objective Complete - Mini Debriefing -- Looping over tracks -- Engage Thrusters -- Step 1 - creating the radio buttons -- Step 2 - on end of song callback -- Step 3 - what next? -- Step 4 - fetching the next track -- Objective Complete - Mini Debriefing -- Adding the contextual menu -- Engage Thrusters -- Step 1 - creating the contextual menu -- Step 2: overriding the close button -- Objective Complete - Mini Debriefing -- Adding a tooltip and finalizing our player -- Prepare for Lift Off -- PMW list of extensions -- Widgets -- Dialogs -- Miscellaneous -- Engage Thrusters -- Step 1 - importing PMW -- Step 2 - instantiating the Balloon widget -- Step 3 - adding Balloon tooltips to all buttons in our player -- Objective Complete - Mini Debriefing -- Mission Accomplished -- A Hotshot Challenge -- 6. Drawing an Application -- Mission Briefing -- Why Is It Awesome? -- Your Hotshot Objectives -- Mission Checklist -- Developing a bare bone GUI framework -- Prepare for Lift Off -- Engage Thrusters -- Step 1 - creating the GUI framework class -- Step 2 - creating menu builder -- Step 3 - testing our new framework -- Objective Complete - Mini Debriefing -- Classified Intel -- Structuring our drawing program -- Engage Thrusters -- Step 1 - importing framework -- Step 2: building the top menu -- Step 3 - undo operation on the Canvas widget -- Step 4 - saving canvas objects -- Step 5 - creating buttons in the left tool bar -- Step 6 - adding command callback to buttons.

Step 7 - creating color palettes and color selection dialog.
Abstract:
Practical, real-world example projects. Start with the topics that grab your attention or work through each project in sequence.If you have just started with GUI programming, this book is ideal for you. This book is also great if you are an experienced software developer, scientist, researcher, engineer, student, or hobbyist.
Local Note:
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2017. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
Electronic Access:
Click to View
Holds: Copies: