舉報

會員
Tkinter GUI Programming by Example
ThisbookisforbeginnerstoGUIprogrammingwhohaven’tusedTkinteryetandareeagertostartbuildinggreat-lookinganduser-friendlyGUIs.PriorknowledgeofPythonprogrammingisexpected.
目錄(193章)
倒序
- 封面
- Title Page
- Copyright and Credits
- Tkinter GUI Programming by Example
- 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
- Installation
- How will the code be structured?
- Geometry managers
- pack
- grid
- place
- To pack or to grid?
- Getting going
- Adding interactivity
- Using variables
- Our first try
- Creating Tkinter-compatible variables
- Using and updating
- Fixing our application
- Showing messages
- Showing information with showinfo
- Showing warnings or errors
- Getting feedback from the user
- Getting text input
- Summary
- Back to the Command Line – Basic Blackjack
- Python's class system
- Instances
- Inheritance
- Blackjack's classes
- The Card class
- The Deck class
- The Hand class
- The Game class and main loop
- Command line versus GUI
- Interactivity
- Familiarity
- Ease of use
- Size and portability
- Summary
- Jack is Back in Style – the Blackjack GUI
- Moving from the command line to a graphical interface
- The Canvas widget
- Creating a graphical blackjack game
- Card Deck and Hand
- The GameState class
- The GameScreen class
- Playing our game
- Summary
- The Finishing Touches – Sound and Animation
- Python's module system
- The blackjack packages
- The casino package
- The casino_sounds package
- Setting up a virtual environment
- Creating the package
- The blackjack.py file
- Initializing the GameWindow class
- The GameScreen class
- The GameState class
- Choosing to hit
- Choosing to stick
- Running out of money
- Finishing off
- Summary
- Creating a Highly Customizable Python Editor
- The ttk submodule
- Styling a tk widget
- Styling a ttk widget
- Ttk style inheritance
- Beginning our text editor
- Tkinter's event system
- Binding an event
- Overwriting default events
- Generating events
- Events in our text editor
- A second top-level window
- Summary
- Color Me Impressed! – Adding Syntax Highlighting
- Tkinter's indexing system
- Getting the cursor's position
- Named indexes
- Special strings
- Line endings
- Horizontal movement
- Vertical movement
- Line beginning and end
- Word beginning and end
- Expanding our demo
- Using tags
- Searching text
- Adding syntax highlighting to our text editor
- The Highlighter class
- Using our Highlighter class
- The LineNumbers class
- Using our LineNumbers class
- Integrating our FindWindow class
- Using our FindWindow class
- Summary
- Not Just for Restaurants – All About Menus
- The Menu widget
- A menu bar
- A floating menu
- Adding a menu bar to our text editor
- Adding a context menu to our text editor
- Handling files
- Changing the syntax highlighting
- Changing the editor's font
- The Listbox widget
- The Spinbox widget
- Saving the user's choices
- Changing the editor's color scheme
- Summary
- Talk Python to Me – a Chat Application
- Creating a scrollable frame
- Creating our FriendsList class
- Creating our ChatWindow class
- Creating our SmilieSelect class
- Summary
- Connecting – Getting Our Chat Client Online
- Introduction to flask
- Our first web page
- Using JSON
- The requests module
- Sending a GET request
- Sending a POST request
- The sqlite3 module
- Creating a database and table
- Adding data to a SQLite database
- Selecting data from a SQLite database
- Linking flask and sqlite
- Updating our FriendsList class
- Creating the Requester class
- Connecting our FriendsList to our web service
- Connecting our ChatWindow
- Updating our server to store conversations
- Creating the Conversation class
- Using the Conversation class in our server
- Adding the new endpoints to our Requester
- Updating our ChatWindow class to send requests to the server
- Summary
- Making Friends – Finishing Our Chat Application
- Using threads
- Why use a thread with a GUI application?
- Using a thread
- Adding a Thread to our ChatWindow
- Creating new endpoints
- The ListeningThread class
- Implementing the ListeningThread class in our ChatWindow
- Allowing users to upload avatars
- The AvatarWindow class
- Adjusting the database
- Adding server endpoints
- Updating the FriendsList class
- Manipulating images with PIL
- Adding and blocking other users
- New database table
- Creating the server endpoints
- Tying it all together
- Summary
- Wrapping Up – Packaging Our Applications to Share
- Unexplored widgets
- The LabelFrame widget
- The Checkbutton and Radiobutton widgets
- The OptionMenu and Combobox widgets
- The Notebook widget
- Packaging applications
- Adjusting our text editor for portability
- Preparing to package with setup.py
- Installing our text editor
- Cross-platform using Pip
- Windows
- Linux
- macOS
- Summary
- Other Books You May Enjoy
- Leave a review - let other readers know what you think 更新時間:2021-08-27 18:49:38
推薦閱讀
- 少兒人工智能趣味入門:Scratch 3.0動畫與游戲編程
- 工程軟件開發技術基礎
- Java游戲服務器架構實戰
- INSTANT Weka How-to
- 64位匯編語言的編程藝術
- 前端架構:從入門到微前端
- Raspberry Pi 2 Server Essentials
- Mastering Rust
- Reactive Android Programming
- 程序是怎樣跑起來的(第3版)
- AI自動化測試:技術原理、平臺搭建與工程實踐
- 零基礎C語言學習筆記
- C語言程序設計
- 分布式系統架構與開發:技術原理與面試題解析
- Mastering Magento Theme Design
- SQL Server 2012數據庫管理與開發(慕課版)
- PHP面試一戰到底
- 邊做邊學深度強化學習:PyTorch程序設計實踐
- Building an E-Commerce Application with MEAN
- Java高級程序設計實戰教程
- HTML+CSS+JavaScript Web前端開發技術
- 深入理解Go語言
- 網頁設計與制作:HTML5+CSS3+JavaScript(第5版·微課版)
- C語言學習指南:從規范編程到專業級開發
- Mastering Cloud Development using Microsoft Azure
- Zabbix Network Monitoring Essentials
- Java應用開發:企業級開發
- ASP.NET Core 2 and Angular 5
- 數據生態:MySQL復制技術與生產實踐
- TypeScript 2.x for Angular Developers