Lập Trình GUI Bằng Tkinter Trong Python - T3H
Có thể bạn quan tâm
- Trang chủ
- Thư viện
- Tin lập trình
Python Tkinter - Lập trình GUI bằng Tkinter trong Python
By t3h 0 CommentsGUI (Graphic user interface) hay còn gọi là giao diện người dùng đồ họa được sử dụng vô cùng phổ biến trong máy tính, các thiết bị đa phương tiện,... Sự hiện diện của GUI ngày càng gia tăng trong kỷ nguyên số, khi các thiết bị số trở thành một phần không thể thay thế trong đời sống con người.
Python cung cấp rất nhiều lựa chọn cho việc phát triển GUI. Tkinter, wxPython hay JPython là những công cụ quan trọng để tạo GUI. Trong bài viết ngày hôm, T3H xin giới thiệu tới bạn PythonTkinter - một trong những thư viện cơ bản để tạo GUI trong Python
Ứng dụng của sử dụng Tkinter để xây dựng GUI trong Python
Lập trình với Python Tkinter
Tkinter là thư viện GUI tiêu chuẩn cho Python. Khi kết hợp với Tkinter, Python sẽ được cung cấp các công cụ một cách nhanh chóng và dễ dàng để tạo các ứng dụng GUI. Tkinter cung cấp giao diện hướng đối tượng mạnh mẽ đến các bộ công cụ Tk GUI.
Việc tạo một ứng dụng sử dụng Tkinter là một công việc vô cùng đơn giản. Tất cả những gì bạn cần làm là làm theo các bước sau:
- Nhập mô đun Tkinter
- Tạo cửa sổ ứng dụng chính của GUI
- Thêm một vài widgets vào ứng dụng GUI
- Nhập vòng lặp event chính để thực hiện hành động với từng sự kiện do người dùng kích hoạt
Ví dụ:
#!/usr/bin/python
import Tkinter
top = Tkinter.Tk()
# Code to add widgets will go here...
top.mainloop()
Điều này sẽ tạo ra một cửa sổ sau:
Cửa số tk
>>> Xem thêm: Decorator trong Python - TÌm hiểu sâu về Decorator trong Python
Các Widgets của Tkinter Python
Tkinter cung cấp nhiều bảng điều khiển khác nhau được sử dụng trong một ứng dụng GUI như các nút, nhãn và hộp kiểm,.... Những bảng điều khiển này thường được gọi là widget.
Hiện tại có 15 kiểu widget trong Tkinter. Các tiện ích này được liệt kê trong bảng dưới đây:
STT | Mô tả |
1 | Button: Tiện ích Button được sử dụng để hiển thị các nút trong ứng dụng |
2 | Canvas: Sử dụng để vẽ các hình dạng, chẳng hạn như đường thẳng, hình bầu dục, đa giác và hình chữ nhật, trong ứng dụng của bạn. |
3 | Checkbutton: sử dụng để hiển thị một số tùy chọn dưới dạng hộp kiểm. Người dùng có thể chọn nhiều tùy chọn cùng một lúc. |
4 | Entry: được sử dụng để hiển thị trường văn bản một dòng để chấp nhận các giá trị từ người dùng. |
5 | Frame: được sử dụng như một widget vùng chứa để sắp xếp các widget khác. |
6 | Label: được sử dụng để cung cấp chú thích một dòng cho các tiện ích con khác. Nó cũng có thể chứa hình ảnh. |
7 | Listbox: được sử dụng để cung cấp danh sách các tùy chọn cho người dùng. |
8 | Menubutton: được sử dụng để hiển thị các menu trong ứng dụng của bạn. |
9 | Menu:được sử dụng để cung cấp các lệnh khác nhau cho người dùng. Các lệnh này được chứa bên trong Menubutton. |
10 | Message:được sử dụng để hiển thị các trường văn bản nhiều dòng để chấp nhận các giá trị từ người dùng. |
11 | Radiobutton: được sử dụng để hiển thị một số tùy chọn dưới dạng các nút radio. Người dùng chỉ có thể chọn một tùy chọn tại một thời điểm. |
12 | Scale: được sử dụng để cung cấp tiện ích con trượt. |
13 | Scrollbar: được sử dụng để thêm khả năng cuộn vào các tiện ích con khác nhau, chẳng hạn như hộp danh sách. |
14 | Text: được sử dụng để hiển thị văn bản trong nhiều dòng. |
15 | Toplevel: được sử dụng để cung cấp một vùng chứa cửa sổ riêng biệt. |
16 | Spinbox: Tiện ích Spinbox là một biến thể của tiện ích Tkinter Entry tiêu chuẩn, có thể được sử dụng để chọn từ một số giá trị cố định. |
17 | PanedWindow: PanedWindow là một widget vùng chứa có thể chứa bất kỳ số lượng ngăn nào, được sắp xếp theo chiều ngang hoặc chiều dọc. |
18 | LabelFrame: Labelframe là một tiện ích chứa đơn giản. Mục đích chính của nó là hoạt động như một bộ đệm hoặc vùng chứa cho các bố cục cửa sổ phức tạp |
19 | tkMessageBox: Mô-đun này được sử dụng để hiển thị các hộp thông báo trong các ứng dụng của bạn. |
>>> Tham khảo: Khóa học lập trình Python
Quản lý hình học trong Tkinter Python
Để lập trình GUI bằng tkinter thành thạo các khối hình cũng là yếu tố cần thiết và quan trọng. Các widget Tkinter đều có quyền truy cập vào các phương pháp quản lý hình học cụ thể, có mục đích tổ chức các widget trong toàn bộ khu vực widget chính. Tkinter cũng đưa ra các lớp với trình quản lý hình học như: pack, grid và place:
- Phương thức pack (): sắp xếp các tiện ích trong khối trước khi đặt chúng vào các parent widgets
- Phương thức grid(): Sắp xếp các tiện ích trong một cấu trúc bảng tương tự như trong tiện ích parents.
- Phương thức place(): Sắp xếp các tiện ích bằng cách đặt chúng vào các vị trí cụ thể trong tiện ích parents.
Kết luận: Trên đây là các kiến thức về Python Tkinter, một số yếu tố cần thiết để lập trình GUI bằng Tkinter trong Python. Việc sử dụng Tkinter để xây dựng ứng dụng trong Python là một cách dễ dàng và thuận tiện. Do vậy, lập trình viên hoàn toàn có thể sáng tạo các ứng dụng với Tkinter. Hy vọng các thông trên đây hữu ích với bạn trong quá trình làm việc với Tkinter. Tìm hiểu thêm các ngôn ngữ lập trình khác qua các khóa học lập trình tại T3H bạn nhé!
Tham khảo: tutorialpoint
- t3h's blog
Với mình việc học ở T3H thực sự là điều rất thú vị, được tham gia các hoạt động, được học tập vui vẻ. Đừng ngại việc mình chưa có kinh nghiệm, đừng ngại thất bại, bởi vì các đồ án cũng được xem như là các dự án thực tế rồi. Hãy chuẩn bị cho mình 1 CV thật tốt.
Đinh Nhật Anh Designer tại Dược mỹ phẩm Hàn Quốc GSCTại T3H mình đã được trải qua khoảng thời gian học tập và hoạt động thực sự đáng nhớ. Nó đã cho mình rất nhiều bài học và kinh nghiệm sống cũng như kỹ năng chuyên môn. Hãy mạnh dạn tham gia và làm những điều mà bạn chưa từng làm hoặc không phải thế mạnh của bạn, bạn sẽ biết về nó, tầm hiểu biết của bạn sẽ ngày càng mở rộng.
Nguyễn Việt Anh Designer tại MP GroupT3H giống như bước đệm kiến thức và mối quan hệ của mình. Nhờ T3H mình có thể vừa học vừa tìm được những công việc tốt, kiếm được những đồng nghiệp, những partner ngay khi hoc cùng nhau.
Phạm Quang Linh Team Leader tại Laptrinhluon.comVới T3H, mình luôn biết ơn người thầy đã dìu dắt và dẫn lối mình khi mình bắt đầu vào trường, thầy Nguyễn Mạnh Tiền. Không chỉ hỗ trợ mình trong học tập, công việc mà còn trong cuộc sống và đạo đức. Thầy luôn phân tích và đưa ra hướng giải quyết nhờ đó mình có thể vượt qua những khó khăn khi sống ở 1 thành phố lớn.
Trần Đức Hiến Design tại TMV Digital/ Design tại Maria ClinicT3H là nơi đúng đắn để mình đặt chân tới. Từ những ngày đầu đặt chân đến đã thấy sự nhiệt tình của mọi người trong trường, ngoài việc học, ở T3H mình còn được tham gia các hoạt động chào đón tân sinh viên, các hoạt động mừng ngày lễ, gắn kết sinh viên. Chúc mọi người có thật nhiều thành công khi học tại T3H.
Đinh Xuân PhươngHọc tại T3h rất tốt cho các bạn muốn theo đuổi ngành công nghệ thông tin, trau dồi kiến thức cho mình và hỏi mọi người, biến những đam mê của mình dần đạt được cái mình mong muốn, hãy hết mình vì cái mình đam mê và biến nó dần thành hiện thực.
Nguyễn Văn Tiến Photo - Cameraman - Editor tại Pông MediaT3h đã cho tôi những trải nghiệm mới mẻ, đặc biệt là giúp tôi được thử thách và chứng tỏ bản thân mình. Nếu được chọn lại, tôi chắc chắn vẫn sẽ chọn là sinh viên T3h!!!
(Sinh viên lớp: K28DH)
Lê Hồng Nhung Designer - Công ty công nghệ Lê NamMôi trường năng động, các bạn sinh viên nhiệt tình. Không có nhiều khoảng cách giữa sinh viên và giảng viên
(Sinh viên lớp: K28DH)
Lê Duy Ngọc Developer .Net - Tập đoàn Đại ViệtMôi trường học tập tốt, một số thầy cô giáo giảng dạy rất có tâm, nhiệt tình với sinh viên. Sinh viên sau khi hoàn thành khóa học cũng dễ dàng tìm kiếm được công việc phù hợp.
(Sinh viên lớp: K29C _ DH1507)
Đỗ Thị Hải Hậu Phụ trách Model 3D - Công ty GDLT3H là một mái trường rất đáng yêu, bạn bè đáng yêu, đến thầy cô cũng đang yêu nốt
(Sinh viên lớp: K29A1_DH1507)
Phan Tiến Dũng Designer - Công ty HatchThật may mắn khi thầy cô giáo, anh chị Hội Sinh viên rất nhiệt tình, giúp đỡ chúng mình. T3H như là ngôi nhà thứ 2 của mình vậy đó.
(Sinh viên lớp: K29A_DH1507)
Nguyễn Thị Phương Thủy Designer - Công ty tranh 3DT3H thật sự là 1 gia đình, mọi người đều sẵn sàng dậy cho nhau 1 điều gì đó, một môi trường mà mọi người đều sẵn sàng chia sẻ và học hỏi lẫn nhau (Sinh viên lớp: K29A1_DH1507)
Lê Trung Kiên Trưởng ban thiết kế - Công ty Skynetone Việt NamMột môi trường hoàn toàn năng động và có ứng dụng thực tế hơn rất nhiều ngôi trường khác. (Sinh viên lớp: K29A_DH1507)
Nguyễn Thị Bích Thảo Chuyên viên diễn hoạt Animation - Công ty CP Global Dream Lad – Tổ chức giáo dục Hoa Kỳ.T3H là nơi tôi được sống trọn với những đam mê, những sở thích, là nơi tôi có thể khám phá được những khả năng của bản thân. Tất cả là nhờ sự tận tâm, tận tình từ các thầy cô, anh chị, bạn bè. T3H đã thực sự trở thành mái nhà thứ 2 của tôi!!!
Nguyễn Mạnh Tiền Cán bộ phòng Đào tạo Hitech Việt NamĐề tài Project java android xuất xắc, sinh viên tiêu biểu T3H - Framgia Vietnam nhận ngay trong hội đồng bảo vệ đồ án cuối khóa
Phạm Trung Đoan FPT Software, Framgia Vietnam"Tôi học ở T3h với những thầy cô nhiệt tình , quan tâm lo lắng cho Sinh viên. Môi trường năng động, bạn bè hòa đồng vui vẻ. Các bạn hãy đến với T3H Hà Nội để trải nghiệm nhé"
NGUYỄN VĂN DŨNG Lớp K30A1DH"Dẫu tưởng rằng T3h sẽ giống những trường đại học khác, khô khan và chỉ biết đến bản thân. Nhưng không khi đến đây và học tập rồi hoạt động em mới hiểu tại sao lại gọi là T3h family', những chiến binh hết mình với học tập"
Nguyễn Thảo Quỳnh K29A1-DH1507"Kiến thức, những người bạn lầy lội, những giảng vui tính là thứ mà tôi có được tại T3H. Nơi đây chính là cây cầu nối giữa tôi với niềm đam mê của mình về CNTT"
Nguyễn Tiến Tân K30A4DH"Môi trường học năng động trẻ chung, giáo viên rất nhiệt tình hướng dẫn, support đồ án cho sinh viên"
Nguyễn Minh Lân K30A3DH"Khi học tập ở T3H, tôi đã bổ sung cho mình được rất nhiều kiến thức để vận dụng công việc tốt hơn và định hướng được nghề nghiệp. Giảng viên rất nhiệt tình, nhiều kinh nghiệm, giúp đỡ tôi rất nhiều trong quá trình học. Cảm ơn T3H"
PHẠM TRUNG ĐOAN Làm việc tại Samsung Electronic Việt Nam"Thầy cô giảng viên và anh chị khóa trên rất thân thiện và tận tâm. Họ sẵn sàng, khi bạn cần giúp về vấn đề kĩ thuật hay học tập của bạn. Đây là điều em thích nhất ở T3H"
Đỗ Quang Linh K30A3DHT3H là ngôi nhà thứ hai của tôi, môi trường thoải mái, bạn bè thân thiện, thầy cô tâm huyết. Nơi đây đã cho tôi nhiêu bài học quý giá, nhiều kỉ niệm đẹp. Cám ơn T3H, tình yêu tuổi trẻ của tôi!.
VŨ THỊ QUỲNH Designer tại Hitech Việt NamNơi tôi cảm nhận được sự yêu thương, nhiệt huyết của các thầy cô. Nơi đã cho tôi cơ hội được phát triển, nơi giúp tôi trường thành, nơi cho tôi cuộc sống và sự nghiệp như ngày hôm nay.
Nguyễn Văn Thành Designer tại Topica Edtech GroupMôi trường học tập thoải mái, thầy cô dễ gần, dễ tiếp xúc, kiến thức sát với thực tế. Nhà trường luôn luôn tạo nhiều điều kiện cho sinh viên phát triển!
Doãn Trọng Tài TP Công nghệ cty D&D Việt NamThầy cô nhiệt tình và tâm huyết với sinh viên. Các anh chị sinh viên có tinh thần giúp đỡ các em khóa dưới. Môi trường thoải mái, và cho sinh viên cơ hội phát triển.
Trần Thị Hoa Hội sinh viên T3HT3H nơi tôi cảm nhận được sự gần gũi, thân thương, là cái nôi đã giúp tôi trưởng thành như ngày hôm nay. Từ một sinh viên "KHÔNG BIẾT GÌ" về đồ họa, giờ tôi có thể tự tin mà nói rằng : I AM A PROFESSIONAL DESIGNER với công việc và mức lương tôi hằng mơ ước!
Phạm Ánh Duyên Designer of HONG HA PRINTING .,JSC"Trường luôn tạo điều kiện học tập tốt nhất cho sinh viên, các giảng viên thì nhiệt tình, tận tâm với sinh viên, hỗ trợ sinh viên hết mình! Ngoài việc học trên trường, hội sinh viên còn tổ chức ra nhiều chương trình, nhiều sự kiện để khuấy động phong trào trong sinh viên"
Nguyễn Thị Thu Hà Thiết kế 2D - Công ty CP BĐS RblandT3H là nơi tôi được sống trọn với những đam mê, những sở thích, là nơi tôi có thể khám phá được những khả năng của bản thân. Tất cả là nhờ sự tận tâm, tận tình từ các thầy cô, anh chị, bạn bè. T3H đã thực sự trở thành mái nhà thứ 2 của tôi!!!
Nguyễn Mạnh Tiền Cán bộ phòng Đào tạo Hitech Việt NamĐề tài Project java android xuất xắc, sinh viên tiêu biểu T3H - Framgia Vietnam nhận ngay trong hội đồng bảo vệ đồ án cuối khóa
Phạm Trung Đoan FPT Software, Framgia VietnamThầy cô giảng viên và anh chị khóa trên rất thân thiện và tận tâm. Họ sẵn sàng, khi bạn cần giúp về vấn đề kĩ thuật hay học tập của bạn. Đây là điều em yêu hích nhất ở T3H"
Lê Trung Kiên K29DH"T3H là một môi trường giáo dục thực tế nhất mà em từng biết. Đã đào tạo thẳng vào chuyên ngành giúp cho sinh viên phát huy được hết các khả năng về chuyên ngành của mình"
Phạm Hồng Hà K30A1DH- Redux Là Gì? Hiểu Rõ Cơ Bản Về Redux Nov 26,2024
- Regular Expression Là Gì? Cú Pháp Và Cách Viết Regex Chi Tiết Nov 22,2024
- Event Loop Là Gì? Tất Cả Kiến Thức Cần Biết Về Bất Đồng Bộ JavaScript (Event Loop) Nov 18,2024
- Yaml Là Gì? Kiến Thức Phải Học Nếu Muốn Trở Thành Một Kỹ Sư DevOps Nov 16,2024
- Lodash Là Gì? Tất Tần Tật Về Lodash Và Ví Dụ Cụ Thể Nov 15,2024
Từ khóa » Thư Viện Tkinter Trên Python
-
Giới Thiệu Python Tkinter - Học Python Online - VietTuts
-
Python Tkinter – Lập Trình GUI Với Tkinter - Phở Code
-
Hướng Dẫn Lập Trình Giao Diện GUI Bằng Tkinter Trong Ngôn Ngữ ...
-
Python: Bài 1. Giới Thiệu Về Tkinter | V1Study
-
Python] Bài 1: Giới Thiệu Thư Viện Tkinter - YouTube
-
Ví Dụ GUI Python (Hướng Dẫn Tkinter) - HelpEx
-
[Python] Thư Viện Tkinter - .vn
-
Python - Lập Trình GUI (Tkinter)
-
Làm App Giao Diện đồ Hoạ Với Python | TopDev
-
1 Làm Một GUI đầu Tiên Với Tkinter. - Đạt Học Lập Trình
-
Lập Trình Phần Mềm Với Tkinter (Python) - ZendVN
-
Python - Lập Trình GUI (Tkinter) - Lib24.Vn
-
Những điều Mà Lập Trình Viên Python Có Thể Làm - Japan IT Work