Bästa PyGui, ett lättanvänt Python GUI-ramverk

nyligen meddelade lanseringen av den nya versionen av Dear PyGui 1.0.0 (DPG), som positionerar sig som ett plattformsoberoende ramverk för GUI-utveckling i Python.

Den viktigaste egenskapen i projektet är användning av multi-threading och outsourcing av operationer till GPU:n för att påskynda renderingen. Huvudmålet med att forma version 1.0.0 är att stabilisera API:et. Ändringar som bryter kompatibiliteten kommer nu att erbjudas i en separat "experimentell" modul.

För att säkerställa hög prestanda, det mesta av DearPyGui-koden skrivs i C++ med hjälp av Dear ImGui-biblioteket som är designad för att skapa grafiska applikationer i C++ och erbjuda en fundamentalt annorlunda driftsmodell.

Verktygslådan är lämplig för att både snabbt skapa enkla gränssnitt och utveckla komplexa specialiserade GUI:er för spel, teknik och vetenskapliga applikationer som kräver hög lyhördhet och interaktivitet.

Applikationsutvecklare förses med ett enkelt API och en uppsättning traditionella element ur lådan, såsom knappar, reglage, alternativknappar, menyer, textformulär, bildvisning och olika layoutmetoder för fönsterelement. Av de avancerade funktionerna sticker stödet för bildandet av diagram, grafer och tabeller ut.

Dessutom, en uppsättning resursvisare, en nodlänkredigerare, ett hudinspektionssystem och renderingselement är tillgängliga frihänder lämpliga för att skapa 2D-spel. För att förenkla utvecklingen tillhandahålls flera verktyg, inklusive en debugger, kodredigerare, dokumentationsvisare och loggvisare.

Dear PyGui implementerar det abstrakta driftsättet för API:n (behållet läge) typiskt för GUI-bibliotek, men är implementerat ovanpå Dear ImGui-biblioteket, som fungerar på IMGUI (immediate mode GUI).

Behållet läge innebär att biblioteket tar över scenbyggandet, medan i omedelbart läge renderas renderingsmodellen på klientsidan och grafikbiblioteket används endast för den slutliga utdatan, det vill säga applikationen varje gång den utfärdar kommandon för att rita alla gränssnittselement för att bilda nästa färdiga ram.

DearPyGui använder inte de inbyggda systemtillhandahållna widgetarna, utan genererar sina egna widgets genom att anropa grafik-API:erna OpenGL, OpenGL ES, Metal och DirectX 11, beroende på det aktuella operativsystemet. Totalt erbjuds mer än 70 färdiga widgets.

I den nya versionen det nämns att bör ha minst antal fel att dejta trots att detta utesluter inte att det kan finnas några regressionsbuggar, eftersom många av de underliggande systemen har refaktorerats helt sedan 0.8 och det finns fortfarande en betydande inställning för regressionstestning. Huvudfokus för denna utgåva var att stabilisera API:t, vilket vi nu har gjort. Aktuella problem måste omvärderas för den här utgåvan.

Utöver detta har ett stort antal nya kommandon lagts till i verktyget, tillsammans med en ny experimentmodul och framför allt med borttagning av olika kommandon som redan blivit föråldrade.

Av de andra förändringarna som sticker ut från den här nya versionen:

  • Användaren måste skapa Dear_PyGuicreate_context()-kontexten innan han anropar några DPG-kommandon
  • dragPayload ändrad drag_data skickas till mål i drag_callback istället för drop_callback
  • flyttade logger och teman till DearPyGui_Ext
  • tabellrader krävs nu
  • remote bind_item_disabled_theme()
  • remote bind_item_type_disabled_theme()
  • remote bind_item_type_theme()
  • Nu måste användaren skapa, konfigurera och visa viewporten innan dpg startas.
  • "create_viewport()-> setup_dearpygui()-> show_viewport()-> start_dearpygui()"
  • add_theme_color() och add_theme_style() måste veta för att tillhöra en theme_component

Slutligen om du är intresserad av att veta mer om Dear PyGui eller om du också vill veta hur du installerar det här verktyget på ditt system kan du göra det från följande länk.

Det är också viktigt att nämna att Dear PyGui-källkoden distribueras under MIT-licensen. Deklarerat stöd för Linux, Windows 10 och macOS-plattformar.


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för data: AB Internet Networks 2008 SL
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.