ورود به حساب

نام کاربری گذرواژه

گذرواژه را فراموش کردید؟ کلیک کنید

حساب کاربری ندارید؟ ساخت حساب

ساخت حساب کاربری

نام نام کاربری ایمیل شماره موبایل گذرواژه

برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید


09117307688
09117179751

در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید

دسترسی نامحدود

برای کاربرانی که ثبت نام کرده اند

ضمانت بازگشت وجه

درصورت عدم همخوانی توضیحات با کتاب

پشتیبانی

از ساعت 7 صبح تا 10 شب

دانلود کتاب Python GUI Programming with Tkinter: Design and build functional and user-friendly GUI applications, 2nd Edition

دانلود کتاب برنامه نویسی Python GUI با Tkinter: طراحی و ساخت برنامه های رابط کاربری گرافیکی کاربردی و کاربر پسند، نسخه دوم

Python GUI Programming with Tkinter: Design and build functional and user-friendly GUI applications, 2nd Edition

مشخصات کتاب

Python GUI Programming with Tkinter: Design and build functional and user-friendly GUI applications, 2nd Edition

ویرایش: 2 
نویسندگان:   
سری:  
ISBN (شابک) : 1801815925, 9781801815925 
ناشر: Packt Publishing - ebooks Account 
سال نشر: 2021 
تعداد صفحات: 0 
زبان: English 
فرمت فایل : EPUB (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) 
حجم فایل: 6 مگابایت 

قیمت کتاب (تومان) : 33,000



ثبت امتیاز به این کتاب

میانگین امتیاز به این کتاب :
       تعداد امتیاز دهندگان : 8


در صورت تبدیل فایل کتاب Python GUI Programming with Tkinter: Design and build functional and user-friendly GUI applications, 2nd Edition به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.

توجه داشته باشید کتاب برنامه نویسی Python GUI با Tkinter: طراحی و ساخت برنامه های رابط کاربری گرافیکی کاربردی و کاربر پسند، نسخه دوم نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.


توضیحاتی در مورد کتاب برنامه نویسی Python GUI با Tkinter: طراحی و ساخت برنامه های رابط کاربری گرافیکی کاربردی و کاربر پسند، نسخه دوم



نیازهای کاربر در حال تکامل خود را به برنامه های کاربردی Tkinter با ویژگی های غنی تبدیل کنید

ویژگی های کلیدی

  • به طور گسترده با محتوای جدید در شبکه های RESTful، کلاس ها اصلاح شده است. در Tkinter و ویجت Notebook
  • از ویژگی های سبک وزن، قابل حمل و استفاده آسان Tkinter استفاده کنید
  • کد سازمان یافته بهتر بسازید و مدیریت یک پایگاه کد در حال تکامل را یاد بگیرید
  • li>

توضیحات کتاب

Tkinter به دلیل سادگی به طور گسترده برای ساخت رابط کاربری گرافیکی در پایتون استفاده می شود. در این کتاب، با یادگیری توسعه برنامه‌های کاربردی رابط کاربری گرافیکی کاملاً برجسته، نقاط قوت Tkinter را کشف کرده و بر چالش‌های آن غلبه خواهید کرد.

برنامه‌نویسی رابط کاربری گرافیکی پایتون با Tkinter، نسخه دوم، نه تنها دانش کاری را در اختیار شما قرار می‌دهد. کتابخانه Tkinter GUI، بلکه مجموعه‌ای از مهارت‌های ارزشمند است که شما را قادر می‌سازد برنامه‌های کاربردی بزرگ‌تر را برنامه‌ریزی، پیاده‌سازی و نگهداری کنید. شما یک برنامه کامل ورود داده از ابتدا ایجاد خواهید کرد و یاد می گیرید که چگونه کد خود را در پاسخ به نیازهای کاربر و کسب و کار در حال تغییر رشد دهید و بهبود بخشید.

درکی عملی از ابزارها و تکنیک ها ایجاد خواهید کرد. برای مدیریت این پایگاه کد در حال تحول و فراتر رفتن از قابلیت های پیش فرض ویجت Tkinter استفاده می شود. شما کنترل نسخه و تست واحد، جداسازی نگرانی ها از طریق الگوی طراحی MVC و برنامه نویسی شی گرا را برای سازماندهی بهتر کد خود پیاده سازی خواهید کرد.

همچنین با فناوری هایی که اغلب در محل کار استفاده می شوند، تجربه کسب خواهید کرد. برنامه های کاربردی، مانند پایگاه های داده SQL، خدمات شبکه، و کتابخانه های تجسم داده ها. در نهایت، برنامه خود را برای توزیع گسترده‌تر بسته‌بندی می‌کنید و با چالش حفظ سازگاری بین پلتفرم‌ها مقابله می‌کنید.

آنچه یاد خواهید گرفت

  • به خوبی سازمان‌دهی‌شده، کاربردی تولید کنید، و برنامه های رابط کاربری گرافیکی پاسخگو
  • کارکرد ویجت های موجود را با استفاده از کلاس ها و OOP گسترش دهید
  • برای گسترش برنامه خود با استفاده از MVC و کنترل نسخه عاقلانه برنامه ریزی کنید
  • مطمئن شوید برنامه شما از طریق اعتبار سنجی ویجت و آزمایش واحد طبق برنامه کار می کند
  • از ابزارها و فرآیندها برای تجزیه و تحلیل و پاسخ به درخواست های کاربر استفاده کنید
  • با فناوری های مورد استفاده در برنامه های محل کار، از جمله SQL، HTTP آشنا شوید، Matplotlib، threading و CSV
  • از احراز هویت PostgreSQL برای اطمینان از امنیت داده های برنامه خود استفاده کنید

این کتاب برای چه کسی است

این کتاب برای برنامه نویسانی که سینتکس پایتون را درک می کنند، اما هنوز مهارت ها، تکنیک ها و دانش لازم برای طراحی و پیاده سازی یک برنامه نرم افزاری کامل را ندارند. درک درستی از نحو اصلی پایتون مورد نیاز است.

فهرست مطالب

  1. مقدمه ای بر Tkinter
  2. طراحی برنامه های رابط کاربری گرافیکی
  3. ایجاد فرم های اولیه با ابزارک های Tkinter و Ttk
  4. سازماندهی کد ما با کلاس ها
  5. کاهش خطای کاربر با اعتبارسنجی و اتوماسیون
  6. برنامه ریزی برای گسترش برنامه ما
  7. li>
  8. ایجاد منوها با منو و دیالوگ های Tkinter
  9. پیمایش رکوردها با Treeview و Notebook
  10. بهبود ظاهر با سبک ها و تم ها
  11. حفظ پلتفرم های مختلف سازگاری
  12. ایجاد تست های خودکار با unittest
  13. بهبود ذخیره سازی داده ها با SQL
  14. اتصال به ابر
  15. برنامه نویسی ناهمزمان با Thread و Queue< /li>
  16. تجسم داده ها با استفاده از ویجت Canvas
  17. بسته بندی با setuptools و cxFreeze
  18. پیوست A: یک آغازگر سریع در reStructuredText
  19. پیوست B: A آموزش سریع SQL

توضیحاتی درمورد کتاب به خارجی

Transform your evolving user requirements into feature-rich Tkinter applications

Key Features

  • Extensively revised with new content on RESTful networking, classes in Tkinter, and the Notebook widget
  • Take advantage of Tkinter’s lightweight, portable, and easy-to-use features
  • Build better-organized code and learn to manage an evolving codebase

Book Description

Tkinter is widely used to build GUIs in Python due to its simplicity. In this book, you’ll discover Tkinter’s strengths and overcome its challenges as you learn to develop fully featured GUI applications.

Python GUI Programming with Tkinter, Second Edition, will not only provide you with a working knowledge of the Tkinter GUI library, but also a valuable set of skills that will enable you to plan, implement, and maintain larger applications. You’ll build a full-blown data entry application from scratch, learning how to grow and improve your code in response to continually changing user and business needs.

You’ll develop a practical understanding of tools and techniques used to manage this evolving codebase and go beyond the default Tkinter widget capabilities. You’ll implement version control and unit testing, separation of concerns through the MVC design pattern, and object-oriented programming to organize your code more cleanly.

You’ll also gain experience with technologies often used in workplace applications, such as SQL databases, network services, and data visualization libraries. Finally, you’ll package your application for wider distribution and tackle the challenge of maintaining cross-platform compatibility.

What you will learn

  • Produce well-organized, functional, and responsive GUI applications
  • Extend the functionality of existing widgets using classes and OOP
  • Plan wisely for the expansion of your app using MVC and version control
  • Make sure your app works as intended through widget validation and unit testing
  • Use tools and processes to analyze and respond to user requests
  • Become familiar with technologies used in workplace applications, including SQL, HTTP, Matplotlib, threading, and CSV
  • Use PostgreSQL authentication to ensure data security for your application

Who this book is for

This book is for programmers who understand the syntax of Python, but do not yet have the skills, techniques, and knowledge to design and implement a complete software application. A fair grasp of basic Python syntax is required.

Table of Contents

  1. Introduction to Tkinter
  2. Designing GUI Applications
  3. Creating Basic Forms with Tkinter and Ttk Widgets
  4. Organizing Our Code with Classes
  5. Reducing User Error with Validation and Automation
  6. Planning for the Expansion of Our Application
  7. Creating Menus with Menu and Tkinter Dialogs
  8. Navigating Records with Treeview and Notebook
  9. Improving the Look with Styles and Themes
  10. Maintaining Cross-Platform Compatibility
  11. Creating Automated Tests with unittest
  12. Improving Data Storage with SQL
  13. Connecting to the Cloud
  14. Asynchronous Programming with Thread and Queue
  15. Visualizing Data Using the Canvas Widget
  16. Packaging with setuptools and cxFreeze
  17. Appendix A : A Quick Primer on reStructuredText
  18. Appendix B: A Quick SQL Tutorial


فهرست مطالب

Cover
Copyright
Contributors
Table of Contents
Preface
Chapter 1: Introduction to Tkinter
	Introducing Tkinter and Tk
		Choosing Tkinter
		Installing Tkinter
			Installing Python 3.9 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
	An overview of basic Tkinter
		Building a GUI with Tkinter widgets
		Arranging our widgets with geometry managers
		Making the form actually do something
		Handling data with Tkinter control variables
			Using control variables in a callback function
			The importance of control variables
	Summary
Chapter 2: Designing GUI Applications
	Analyzing a problem at ABQ AgriLabs
		Assessing the problem
		Gathering information about the problem
			Interviewing the interested parties
		Analyzing what we\'ve found out
			Information from the data originators
			Information from the users of the application
			Information from technical support
			Information from the data consumer
	Documenting specification requirements
		Contents of a simple specification
		Writing the ABQ data entry program specification
	Designing the application
		Deciding on input widgets
		Grouping our fields
		Laying out the form
		Laying out the application
	Evaluating technology options
	Summary
Chapter 3: Creating Basic Forms with Tkinter and Ttk Widgets
	The Ttk widget set
		The Label widget
		The Entry widget
		The Spinbox widget
		The Checkbutton widget
		The Radiobutton widget
		The Combobox widget
		The Text widget
			Text widget indices
		The Button widget
		The LabelFrame widget
	Implementing the application
		First steps
		Building the data record form
			The Record Information section
			The Environment Data section
			The Plant Data section
			Finishing the GUI
		Writing the callback functions
			The Reset function
			The Save callback
		Finishing up and testing
	Summary
Chapter 4: Organizing Our Code with Classes
	A primer on Python classes
		The advantages of using classes
			Classes are an integral part of Python
			Classes make relationships between data and functions explicit
			Classes help create reusable code
		Syntax of class creation
			Attributes and methods
			Magic attributes and methods
			Public, private, and protected members
		Inheritance and subclasses
	Using classes with Tkinter
		Improving Tkinter classes
		Creating compound widgets
		Building encapsulated components
			Subclassing Tk
	Rewriting our application using classes
		Adding a StringVar to the Text widget
			Passing in a variable
			Synchronizing the widget to the variable
			Synchronizing the variable to the widget
		Creating a more advanced LabelInput()
		Creating a form class
		Creating an application class
	Summary
Chapter 5: Reducing User Error with Validation and Automation
	Validating user input
		Strategies to prevent data errors
		Validation in Tkinter
			The validate argument
			The validatecommand argument
			The invalidcommand argument
	Creating validated widget classes
		Creating a Date field
	Implementing validated widgets in our GUI
		Introducing the power of multiple inheritance
		Building a validating mixin class
		Building validating input widgets with ValidatedMixin
			Requiring data
			Creating a Date widget
			A better Combobox widget
			A range-limited Spinbox widget
			Validating Radiobutton widgets
		Updating our form with validated widgets
		Implementing validation interaction between form widgets
			Dynamically updating the Spinbox range
			Dynamic disabling of fields
		Displaying errors
		Preventing form submission on error
	Automating input
		Date automation
		Automating Plot, Lab, Time, and Technician
	Summary
Chapter 6: 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
			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
			Using custom events to remove tight coupling
		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 7: Creating Menus with Menu and Tkinter Dialogs
	Solving problems in our application
		Planning solutions to the issues
	Implementing Tkinter dialogs
		Error dialogs with the Tkinter messagebox
		Showing error dialogs in ABQ Data Entry
		Using filedialog
		Using simpledialog and creating a custom dialog
			Creating a Login dialog using simpledialog
			Incorporating the LoginDialog in our class
	Designing the application menu
		The Tkinter Menu widget
			Using Checkbutton and Radiobutton items
		Implementing the ABQ application menu
			Adding a Help menu
			Adding a File menu
			Adding a settings menu
			Finishing the menu
		Persisting settings
			Building a model for settings persistence
			Using the settings model in our application
	Summary
Chapter 8: Navigating Records with Treeview and Notebook
	Implementing read and update in the model
		Adding read and update to the CSVModel class
			Implementing get_all_records()
			Implementing get_record()
			Adding update capability to save_record()
	The Ttk Treeview
		Anatomy of a Treeview
		Building a file browser
			Creating and configuring a Treeview
			Populating a Treeview with data
			Sorting Treeview records
			Using Treeview virtual events
	Implementing a record list with Treeview
		Creating the RecordList class
			Configuring a Treeview widget
			Adding a scrollbar for the Treeview
			Populating the Treeview
	Adding the record list to the application
		Modifying the record form for read and update
			Adding a current record property
			Adding a label to show what is being edited
			Adding a load_record() method
		Updating the application layout
			The Ttk Notebook widget
			Adding a notebook to our application
		Adding and updating application callbacks
			The _show_recordlist() method
			The _populate_recordlist() method
			The _new_record() method
			The _open_record() method
			The _on_save() method
		Main menu changes
		Testing our program
	Summary
Chapter 9: Improving the Look with Styles and Themes
	Working with images in Tkinter
		Tkinter PhotoImage
			PhotoImage and variable scope
		Using Pillow for extended image support
		Adding the company logo to ABQ Data Entry
			Dealing with the image path problem
		Setting a window icon
		Adding icons to buttons and menus
			Using BitmapImage
	Styling Tkinter widgets
		Widget color properties
			Using widget properties on the MainMenu
		Styling widget content with tags
			Styling our record list with tags
	Working with fonts in Tkinter
		Configuring Tkinter fonts
			Configuring fonts with strings and tuples
			The font module
		Giving users font options in ABQ Data Entry
	Styling Ttk widgets
		TTk styling breakdown
			Exploring a Ttk widget
			Using themes
		Adding some color to ABQ Data Entry
			Adding styles to individual form widgets
			Fixing the error colors
			Styling input widgets on error
		Setting themes
			Building a theme selector
	Summary
Chapter 10: Maintaining Cross-Platform Compatibility
	Writing cross-platform Python
		Filenames and file paths across platforms
			Path separators and drives
			Case sensitivity
			Symbolic links
			Path variables
		Inconsistent library and feature support
			Python\'s platform-limited libraries
			Checking low-level function compatibility
			The dangers of the subprocess module
		Text file encodings and formats
		Graphical and console modes
		Writing code that changes according to the platform
	Writing cross-platform Tkinter
		Tkinter version differences across platforms
		Application menus across platforms
			Menu widget capabilities
			Menu guidelines and standards
			Menus and accelerator keys
		Cross-platform fonts
		Cross-platform theme support
		Window zoomed state
	Improving our application\'s cross-platform compatibility
		Storing preferences correctly
		Specifying an encoding for our CSV file
		Making platform-appropriate menus
			Preparing our MainMenu class
			Adding accelerators
			Building the Windows menu
			Building the Linux menu
			Building the macOS menu
			Creating and using our selector function
	Summary
Chapter 11: 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 the data model
			Testing file reading in get_all_records()
			Testing file saving in save_record()
			More tests on the models
		Testing our Application object
		Testing our widgets
			Unit testing the ValidatedSpinbox widget
			Integration testing the ValidatedSpinbox widget
		Testing our mixin class
	Summary
Chapter 12: Improving Data Storage with SQL
	PostgreSQL
		Installing and configuring PostgreSQL
			Configuring PostgreSQL using the GUI utility
			Configuring PostgreSQL using the command line
	Modeling relational data
		Primary keys
			Using surrogate primary keys
		Normalization
			First normal form
			Second normal form
			Third normal form
			More normalization forms
		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
		Populating the lookup tables
	Connecting to PostgreSQL with psycopg2
		psycopg2 basics
		Parameterized queries
		Special cursor classes
	Integrating SQL into our application
		Creating a new model
			Saving data
			Getting the current seed sample for the plot
		Adjusting the Application class for the SQL backend
			Implementing SQL logins
			Updating the Application._on_save() method
			Removing file-based code
		Adjusting the DataRecordForm for SQL data
			Reordering fields
			Fixing the load_record() method
			Improving auto-fill
		Updating the RecordList for the SQLModel
		We\'re done!
	Summary
Chapter 13: Connecting to the Cloud
	HTTP using urllib
		HTTP transaction fundamentals
			HTTP status codes
		Basic downloading with urllib.request
			Generating POST requests
		Downloading weather data to ABQ Data Entry
			Creating a weather data model
			Parsing the XML weather data
			Implementing weather data storage
		Adding the GUI elements for weather download
	RESTful HTTP using requests
		Understanding RESTful web services
		The Python requests library
			Installing and using requests
			Interacting with authenticated sites using Session
			The requests.Response object
		Implementing a REST backend
			The authenticate() method
			The upload_file() method
			The check_file() method
			The get_file() method
		Integrating REST upload into the application
			Creating a CSV extract
			Creating the upload callback
			Finishing up
	SFTP using paramiko
		Setting up SSH services for testing
		Installing and using paramiko
			Using paramiko
			Inspecting our connection
			Using SFTP
		Implementing an SFTP model
			Uploading files
			Checking a file\'s existence
		Using SFTPModel in our application
			Finishing up
	Summary
Chapter 14: Asynchronous Programming with Thread and Queue
	Tkinter\'s event queue
		Event queue control
			The update() methods
			The after() methods
		Common uses of event queue control
			Smoothing out display changes
			Mitigating GUI freezes
	Running code in the background with threads
		The threading module
			Tkinter and thread safety
		Converting our network functions to threaded execution
			Using the threaded uploader
			Passing messages using a queue
			The Queue object
			Using queues to communicate between threads
		Adding a communication queue to our threaded uploader
		Creating a communications protocol
		Sending messages from the uploader
		Handling queue messages
	Using locks to protect shared resources
		Understanding the Lock object
		Using a Lock object to prevent concurrent uploads
			Threading and the GIL
	Summary
Chapter 15: Visualizing Data Using the Canvas Widget
	Drawing and animation with Tkinter\'s Canvas
		Drawing on the Canvas
			Rectangles and squares
			Ovals, circles, and arcs
			Lines
			Polygons
			Text
			Images
			Tkinter widgets
			Canvas items and state
		Canvas object methods
		Scrolling the Canvas
		Animating Canvas objects
			Setting up the playing field
			Setting our players
			Animating the racers
			Running the game loop and detecting a win condition
	Creating simple graphs using Canvas
		Creating the model method
		Creating the chart view
		Updating the application
	Advanced graphs using Matplotlib
		Data model method
		Creating the bubble chart view
		Updating the Application class
	Summary
Chapter 16: Packaging with setuptools and cxFreeze
	Creating distributable packages with setuptools
		Preparing our package for distribution
			Creating a requirements.txt file
			Creating a pyproject.toml file
			Adding a license file
			Making our package executable
		Configuring a setup.py script
			Basic metadata arguments
			Packages and dependencies
			Adding extra files
			Defining commands
			Testing the configuration
		Creating and using source distributions
			Testing our source distribution
		Building a wheel distribution
	Creating executables with cx_Freeze
		First steps with cx_Freeze
		The build_exe options
		Including external files
		Building executables
			Cleaning up the build
		Building Windows executables with cx_Freeze
			Building a Windows installer file
		Building macOS executables with cx_Freeze
			Building macOS application bundles
			Building macOS .dmg files
	Summary
Appendix
A Quick Primer on
reStructured Text
A Quick SQL Tutorial
Other Books You May Enjoy
Index




نظرات کاربران