Lập trình ứng dụng desktop bằng Python
Trong quá trình học lập trình với ngôn ngữ Python, rất nhiều người quan tâm tới việc tạo các ứng dụng có giao diện như Windows Form. Hôm nay VniTeach sẽ hướng dẫn các bạn cách đơn giản và nhanh chóng để tạo ra các ứng dụng có giao diện với PyQt5 và Qt Designer trong Python. Show Qt Designer là gì?Qt Designer là một công cụ để nhanh chóng xây dựng giao diện người dùng đồ họa với các widget từ khung Qt GUI . Nó cung cấp cho bạn một giao diện kéo và thả đơn giản để bố trí các thành phần như nút, trường văn bản, hộp tổ hợp và hơn thế nữa. Đây là ảnh chụp màn hình của Qt Designer trên Windows: Giao diện của phần mềm Qt DesignerQt Designer tạo ra Qt Designer và PythonNhiều người thích sử dụng Qt Designer cùng với Python vì nó là một ngôn ngữ động có lợi cho việc tạo mẫu nhanh. Cách dễ nhất để kết hợp Qt Designer và Python là thông qua liên kết PyQt . Để cài đặt PyQt, chỉ cần nhập nội dung sau vào dòng lệnh:
PyQt5 là gì– Qt là một Application framework đa nền tảng viết trên ngôn ngữ C++ , được dùng để phát triển các ứng dụng trên desktop, hệ thống nhúng và mobile. Hỗ trợ cho các platform bao gồm : Linux, OS X, Windows, VxWorks, QNX, Android, iOS, BlackBerry, Sailfish OS và một số platform khác. PyQt là Python interface của Qt, kết hợp của ngôn ngữ lập trình Python và thư viện Qt, là một thư viện bao gồm các thành phần giao diện điều khiển (widgets , graphical control elements). – PyQt API bao gồm các module bao gồm số lượng lớn với các classes và functions hỗ trợ cho việc thiết kế ra các giao diện giao tiếp với người dùng của các phần mềm chức năng. Hỗ trợ với Python 2.x và 3.x. – PyQt được phát triển bởi Riverbank Computing Limited, version mới nhất của PyQt có thể download tại đường link : PyQt Riverbank Computing Limited – Các class của PyQt5 được chia thành các module, bao gồm: Giả sử bạn đã lưu tệp của mình từ Qt Designer dưới dạng Cách 1:
Cách 2:
Sau đó, khi bạn gọi Ngoài ra các bạn cũng có thể chuyển đổi từ tệp .ui (tệp giao diện người dùng) sang tệp .py (tệp Python) bằng câu lệnh trên Terminal như sau: Python GUI: Giao diện đồ hoạ là một phần không thể thiếu khi nói về lập trình. Dù học ngôn ngữ lập trình nào, người ta cũng nghĩ tới chuyện "làm sao để có giao diện đồ hoạ". Python GUI: 06 thư viện làm app giao diện người dùng với Python tốt nhấtGUI Python là gì?Python GUI (Python Graphic User Interface) hay còn gọi là Giao diện đồ hoạ vốn từng là một phần không thể thiếu khi nói về lập trình. Dù học ngôn ngữ lập trình nào, người ta cũng nghĩ tới chuyện "làm sao để có giao diện đồ hoạ". Tuy nhiên khi thời đại tất cả mọi thứ đều chuyển lên web, thì web/app mobile trở thành giao diện để tương tác với người dùng, chứ không phải các phần mềm có giao diện chạy trên máy tính như trước kia. Giờ đây mọi người đều có thể nghe nhạc trên web, xem film trên web, chơi game trên web, soạn thảo văn bản trên web… khó còn ứng dụng nào không đưa lên web nữa. Vậy nên về mặt "sự nghiệp", có vẻ như bạn nên đầu tư vào kỹ năng làm web thay vì học để tạo một app trên desktop như cách đây chục năm. Dĩ nhiên, GUI không ngay lập tức biến mất, vẫn có nhu cầu sử dụng, vẫn có người dùng, vẫn có hàng tá thư viện đồ hoạ tồn tại từ lâu (và vẫn tiếp tục phát triển), vẫn có những game mà chỉ chơi được trên máy tính do yêu cầu về hiệu năng mà web không đáp ứng nổi (như Half-Life/ đế chế / đua xe …). Những thư viện tốt nhất trong Python GUIThư viện TkinterTkinter thường được đóng gói với Python, và nó là Python GUI Framework tiêu chuẩn của Python. Nó phổ biến vì sự đơn giản và giao diện người dùng đồ họa, mã nguồn mở và có sẵn theo Python License. Một trong những ưu điểm của việc chọn Tkinter là vì nó được cung cấp theo Python mặc định, nên có rất nhiều tài nguyên, cả code và sách tham khảo dành cho người mới. Ngoài ra, với cộng đồng lâu đời và năng động, có nhiều người có thể sẵn sàng giúp bạn trong trường hợp bạn mới bắt đầu học, rất nhiều lỗi bạn có thể tìm ra cách sửa chữa ngay lập tức. Thư viện KivyKivy là một Python GUI Framework tăng tốc OpenGL ES 2 để tạo giao diện người dùng mới. Kivy chạy trên Linux, Windows, OS X, Android, iOS và Raspberry Pi. Bạn có thể chạy cùng một mã nguồn trên tất cả các nền tảng được hỗ trợ. Nó có thể sử dụng nguyên bản hầu hết các đầu vào, giao thức và thiết bị bao gồm WM_Touch, WM_Pen, Mac OS X Trackpad và Magic Mouse, Mtdev, Linux Kernel HID, TUIO. Một mô phỏng chuột cảm ứng đa điểm.
Thư viện QtQt là một trong những ràng buộc Python đa nền tảng được ưa chuộng triển khai thư viện Qt cho Framework Python GUI phát triển ứng dụng Qt (thuộc sở hữu của Nokia). Hiện tại, Qt có sẵn cho Unix / Linux, Windows, Mac OS X và Sharp Zaurus. Nó kết hợp những gì tốt nhất của Python và Qt và tùy thuộc vào từng lập trình viên để quyết định tạo một chương trình bằng cách viết code hay sử dụng Qt Designer để tạo các hộp thoại trực quan. Qt có sẵn trong cả giấy phép thương mại cũng như GPL. Mặc dù một số tính năng có thể không có trong phiên bản miễn phí, nhưng nếu ứng dụng của bạn là mã nguồn mở thì bạn có thể sử dụng nó theo giấy phép miễn phí. Thư viện WxPythonWxPython là một trình bao bọc mã nguồn mở cho thư viện Python GUI đa nền tảng WxWidgets (trước đó được gọi là WxWindows) và được triển khai như một mô-đun mở rộng Python. Với WxPython, bạn có thể tạo các ứng dụng gốc cho Windows, Mac OS và Unix. Tham khảo thêm cách cài đặt python trên Windows, Mac OS và Unix.. Nếu bạn mới bắt đầu phát triển các ứng dụng trong thư viện WxPython, đây là một hướng dẫn đơn giản mà bạn có thể tham khảo: https://zetcode.com/wxpython/ Thư viện PysidePySide là một dự án phần mềm mã nguồn mở cung cấp các ràng buộc Python cho Qt Framework. Qt là một ứng dụng đa nền tảng và Python GUI Framework, cho phép các lập trình viên viết ứng dụng một lần và triển khai chúng trên nhiều hệ điều hành mà không cần viết lại mã nguồn. Trong khi Python là một ngôn ngữ lập trình hiện đại, năng động với một cộng đồng lập trình viên khổng lồ. Kết hợp sức mạnh của Qt và Python, PySide cung cấp Qt Framework phong phú cho các lập trình viên sử dụng Python phát triển ứng dụng GUI nhanh chóng trên tất cả các hệ điều hành chính. PyGUIPyGUI là một Python GUI Framework đa nền tảng ứng cho Unix, Macintosh và Windows. So với một số GUI Framework khác, cho đến nay, PyGUI là đơn giản nhất và nhẹ nhất, vì API hoàn toàn đồng bộ với Python. PyGUI chèn rất ít code giữa nền tảng GUI và ứng dụng Python, do đó giao diện của ứng dụng thường hiển thị GUI tự nhiên của nền tảng. Tổng kết Các thư viện trong python
|