Kính gửi PyGui, một khung Python GUI dễ sử dụng

Gần đây việc phát hành phiên bản mới của Dear PyGui 1.0.0 đã được công bố (DPG), được định vị là một khuôn khổ đa nền tảng để phát triển GUI bằng Python.

Tính năng quan trọng nhất của dự án là sử dụng đa luồng và gia công các hoạt động cho GPU để tăng tốc độ hiển thị. Mục tiêu chính của việc định hình phiên bản 1.0.0 là ổn định API. Những thay đổi phá vỡ khả năng tương thích giờ đây sẽ được cung cấp trong một mô-đun "thử nghiệm" riêng biệt.

Để đảm bảo hiệu suất cao, hầu hết mã DearPyGui được viết bằng C ++ sử dụng thư viện Dear ImGui được thiết kế để tạo các ứng dụng đồ họa trong C ++ và cung cấp một mô hình hoạt động khác về cơ bản.

Bộ công cụ này thích hợp cho cả việc tạo nhanh các giao diện đơn giản và phát triển các GUI chuyên dụng phức tạp cho các trò chơi, các ứng dụng khoa học và kỹ thuật đòi hỏi khả năng phản hồi và tương tác cao.

Các nhà phát triển ứng dụng có một API đơn giản và một tập hợp các yếu tố truyền thống, chẳng hạn như nút, thanh trượt, nút radio, menu, biểu mẫu văn bản, hiển thị hình ảnh và các phương pháp thiết kế khác nhau cho các phần tử cửa sổ. Trong số các chức năng nâng cao, việc hỗ trợ hình thành các biểu đồ, đồ thị và bảng là nổi bật.

Bên cạnh đó, một tập hợp người xem tài nguyên, trình chỉnh sửa liên kết nút, hệ thống kiểm tra giao diện và các yếu tố kết xuất có sẵn Freehand thích hợp để tạo các trò chơi 2D. Để đơn giản hóa việc phát triển, một số tiện ích được cung cấp, bao gồm trình gỡ lỗi, trình chỉnh sửa mã, trình xem tài liệu và trình xem nhật ký.

Dear PyGui triển khai chế độ hoạt động trừu tượng API (chế độ giữ lại) điển hình của thư viện GUI, nhưng được triển khai trên thư viện Dear ImGui, hoạt động trên IMGUI (GUI ngay lập tức).

Chế độ được giữ lại có nghĩa là thư viện tiếp quản các tác vụ định hình cảnh, trong khi ở chế độ Ngay lập tức, mô hình kết xuất được hiển thị ở phía máy khách và thư viện đồ họa chỉ được sử dụng cho đầu ra cuối cùng, tức là ứng dụng mỗi lần nó đưa ra lệnh để vẽ tất cả các yếu tố giao diện để tạo thành khung sẵn sàng tiếp theo.

Kính gửiPyGui nó không sử dụng các widget gốc do hệ thống cung cấp, nhưng tạo các widget của riêng nó bằng cách gọi các API đồ họa OpenGL, OpenGL ES, Metal và DirectX 11, tùy thuộc vào hệ điều hành hiện tại. Tổng cộng, hơn 70 vật dụng sẵn sàng sử dụng được cung cấp.

Trong phiên bản mới nó được đề cập rằng nó sẽ có ít lỗi nhất đến nay mặc dù điều này không loại trừ rằng có thể có một số lỗi hồi quy, vì nhiều hệ thống cơ bản đã được cấu trúc lại hoàn toàn từ 0.8 và vẫn còn một thiết lập kiểm tra hồi quy đáng kể. Trọng tâm chính của bản phát hành này là ổn định API, điều mà chúng tôi hiện đã thực hiện. Các vấn đề hiện tại cần được đánh giá lại cho bản phát hành này.

Ngoài ra, một số lượng lớn các lệnh mới đã được thêm vào tiện ích, cùng với một mô-đun thử nghiệm mới và đặc biệt là việc loại bỏ các lệnh khác nhau đã trở nên lỗi thời.

Những thay đổi khác nổi bật so với phiên bản mới này:

  • Người dùng phải tạo ngữ cảnh Dear_PyGuicreate_context () trước khi gọi bất kỳ lệnh DPG nào
  • drag_data đã thay đổi dragPayload được gửi đến các mục tiêu trong drag_callback thay vì drop_callback
  • đã chuyển trình ghi nhật ký và chủ đề sang DearPyGui_Ext
  • các hàng trong bảng bây giờ là bắt buộc
  • từ xa bind_item_disabled_theme ()
  • từ xa bind_item_type_disabled_theme ()
  • từ xa bind_item_type_theme ()
  • Bây giờ người dùng phải tạo, cấu hình và hiển thị khung nhìn trước khi bắt đầu dpg.
  • "Create_viewport () -> setup_dearpygui () -> show_viewport () -> start_dearpygui ()"
  • add_theme_color () và add_theme_style () phải biết cách thuộc về theme_component

Cuối cùng nếu bạn muốn biết thêm về nó về Dear PyGui hoặc bạn cũng muốn biết cách cài đặt công cụ này trên hệ thống của mình, bạn có thể thực hiện từ liên kết sau.

Điều quan trọng cần đề cập là mã nguồn Dear PyGui được phân phối theo giấy phép của MIT. Đã tuyên bố hỗ trợ cho các nền tảng Linux, Windows 10 và macOS.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: AB Internet Networks 2008 SL
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.