stap_1_d
Verschillen
Dit geeft de verschillen weer tussen de geselecteerde revisie en de huidige revisie van de pagina.
Beide kanten vorige revisieVorige revisieVolgende revisie | Vorige revisie | ||
stap_1_d [2023/10/03 06:36] – a3dijke | stap_1_d [2024/07/17 19:58] (huidige) – oude revisie hersteld (2024/07/08 15:05) a3dijke | ||
---|---|---|---|
Regel 1: | Regel 1: | ||
====== Stap 1.d: A3Dbot: Dear PyGui GUI ====== | ====== Stap 1.d: A3Dbot: Dear PyGui GUI ====== | ||
- | <= [[start|Terug naar start]]\\ | + | 🗂️ |
- | <- -- [[projecten|Terug naar A3Dbot Start]]\\ | + | |
- | <- -- -- [[a3d_bot_testomgeving|Terug naar testomgeving opzetten start]] | + | |
+ | |||
+ | 🔸 [[model-training|DearPyGui opzet]] | ||
+ | |||
+ | [[https:// | ||
[[https:// | [[https:// | ||
[[https:// | [[https:// | ||
- | [[ | + | [[https:// |
- | https:// | + | |
Regel 18: | Regel 19: | ||
Je kunt Dear PyGui installeren via pip: | Je kunt Dear PyGui installeren via pip: | ||
< | < | ||
- | pip install dearpygui | + | pip install dearpygui |
</ | </ | ||
- | 2. **Een Simpele Venster**: | + | :!: **Bij problemen met gewoon installeren de onderstaande methode gebruiken** |
+ | < | ||
+ | python -m pip install dearpygui | ||
+ | </ | ||
+ | |||
+ | 2.**upgrade: | ||
+ | < | ||
+ | pip install --upgrade dearpygui | ||
+ | </ | ||
+ | |||
+ | 3. **Een Simpele Venster**: | ||
Een eenvoudig voorbeeld om een venster te creëren met een knop en een tekstveld: | Een eenvoudig voorbeeld om een venster te creëren met een knop en een tekstveld: | ||
< | < | ||
Regel 77: | Regel 88: | ||
+ | ---- | ||
+ | ===== Tussenfase GUI ===== | ||
+ | Ik ben een beetje aan het experimenteren gegaan met bovenstaande informatie en heb een View gemaakt om "Dear PyGui" uit te proberen. Hieronder het resultaat. Note de callbacks staan in een aparte Class die ik er onder heb gezet. De start methode van de A3DGUI wordt gestart vanuit mijn app.py wat het start script is. | ||
+ | < | ||
+ | from a3dcontroler import A3DControler | ||
+ | import dearpygui.dearpygui as dpg | ||
+ | |||
+ | class A3DGUI: | ||
+ | def __init__(self): | ||
+ | self.a3dcon = A3DControler() | ||
+ | |||
+ | def start(self): | ||
+ | dpg.create_context() | ||
+ | |||
+ | with dpg.font_registry(): | ||
+ | default_font = dpg.add_font(" | ||
+ | dpg.bind_font(default_font) | ||
+ | |||
+ | # Maak een venster genaamd "A3D Embeddings" | ||
+ | with dpg.window(label=" | ||
+ | # Voeg een menubalk toe aan het venster ======================================================================== | ||
+ | with dpg.menu_bar(): | ||
+ | with dpg.menu(label=" | ||
+ | dpg.add_menu_item(label=" | ||
+ | dpg.add_menu_item(label=" | ||
+ | |||
+ | # Voeg een tabbladbalk toe aan het venster ===================================================================== | ||
+ | with dpg.tab_bar(): | ||
+ | # Voeg een tabblad toe genaamd " | ||
+ | with dpg.tab(label=" | ||
+ | # Maak een keuzelijst met items | ||
+ | items = ["Item 1", "Item 2", "Item 3"] | ||
+ | dpg.add_combo(items=items, | ||
+ | # Voeg een tekstwidget toe | ||
+ | dpg.add_text(" | ||
+ | # Voeg een tekstinvoerwidget toe | ||
+ | dpg.add_input_text(label="", | ||
+ | # Voeg een tekstwidget toe | ||
+ | dpg.add_text(" | ||
+ | # Voeg een tekstinvoerwidget toe | ||
+ | dpg.add_input_text(label="", | ||
+ | # Voeg knoppen toe om invoer te verzenden en te wissen in een horizontale groep | ||
+ | with dpg.group(horizontal=True): | ||
+ | # Voeg een knop toe genaamd " | ||
+ | dpg.add_button(label=" | ||
+ | # Voeg een knop toe genaamd "Tekst velden wissen" | ||
+ | dpg.add_button(label=" | ||
+ | |||
+ | # Voeg een tabblad toe genaamd " | ||
+ | with dpg.tab(label=" | ||
+ | dpg.add_input_text(label="", | ||
+ | |||
+ | # Voeg een tabblad toe genaamd " | ||
+ | with dpg.tab(label=" | ||
+ | dpg.add_input_text(label="", | ||
+ | |||
+ | dpg.create_viewport(title=' | ||
+ | dpg.setup_dearpygui() | ||
+ | dpg.show_viewport() | ||
+ | dpg.start_dearpygui() | ||
+ | dpg.destroy_context() | ||
+ | </ | ||
+ | |||
+ | === Controler Class === | ||
+ | |||
+ | < | ||
+ | import dearpygui.dearpygui as dpg | ||
+ | from a3dmodel import A3DModel | ||
+ | from a3dapi import A3DApi | ||
+ | |||
+ | class A3DControler: | ||
+ | def __init__(self): | ||
+ | self.a3dmod = A3DModel() | ||
+ | self.a3dapi = A3DApi(self, | ||
+ | | ||
+ | # Callback voor " | ||
+ | def menucall( self, sender, app_data ): | ||
+ | print( self ) | ||
+ | print( sender ) | ||
+ | input_text = dpg.get_value( " | ||
+ | # Jouw code om data te versturen en op te slaan | ||
+ | dpg.set_value( " | ||
+ | |||
+ | # Callbacks voor " | ||
+ | # Callback voor " | ||
+ | def combo_callback(self, | ||
+ | input_text = dpg.get_value(sender) | ||
+ | old_text = dpg.get_value( " | ||
+ | new_text = input_text + " | ||
+ | dpg.set_value( " | ||
+ | |||
+ | # Knoppen ======================================== | ||
+ | # Callback voor "Tekst velden wissen" | ||
+ | def clear_text_fields( self, sender, app_data ): | ||
+ | dpg.set_value( " | ||
+ | dpg.set_value( " | ||
+ | |||
+ | # Callbacks voor " | ||
+ | def send_data( self, sender, app_data ): | ||
+ | print( self.a3dmod.api_openai_key ) | ||
+ | input_text = dpg.get_value( " | ||
+ | old_text = dpg.get_value( " | ||
+ | new_text = input_text + " | ||
+ | dpg.set_value( " | ||
+ | |||
+ | </ | ||
---- | ---- | ||
+ | |||
stap_1_d.1696307815.txt.gz · Laatst gewijzigd: 2023/10/03 06:36 door a3dijke