ImGui

imgui.create

Crée une fenêtre ImGui et renvoie son handle de fenêtre. Les titres des fenêtres actives doivent être uniques.

Syntaxe

imgui.create(title?: string): ImGuiWindow

Arguments

NomTypeDescription
title?stringTitre de la fenêtre. Lorsqu'il est omis, le titre intégré par défaut est utilisé. La création d'une deuxième fenêtre active avec le même titre génère une erreur.

Retours

NomTypeDescription
windowImGuiWindowHandle de fenêtre utilisé pour ajouter des contrôles et détruire la fenêtre.

Description

Crée une fenêtre ImGui et renvoie son handle de fenêtre. Les titres des fenêtres actives doivent être uniques.

Appelle le avec 1 parametre(s): title. La table des arguments indique les valeurs requises et celles qui affinent le comportement.

Il renvoie window (ImGuiWindow). Utilise la table des retours pour separer les valeurs reussies, les resultats nil et les erreurs recuperables.

Exemple

Créez une fenêtre ImGui avec du texte, des contrôles interactifs et des rappels de modification.

local window = imgui.create("Runtime settings")

window:Text("Controls")
window:Separator()

window:Checkbox("Enabled", true, function(enabled)
    print("Enabled:", enabled)
end)

window:SliderFloat("Opacity", 0.8, 0, 1, function(value)
    print("Opacity:", value)
end)

window:InputText("Label", "Real", function(text)
    print("Label:", text)
end)

window:ColorPicker("Accent", 0.3, 0.6, 1, 1, function(red, green, blue, alpha)
    print(red, green, blue, alpha)
end)

window:CollapsingHeader("Advanced", function(section)
    section:Text("Advanced controls go here")
end)

Types

ImGuiWindow

Handle renvoyé par imgui.create. Les méthodes de création de contrôle renvoient le même handle afin que les appels puissent être chaînés.

Button (label: string, onClick: () -> ()) -> ImGuiWindow Ajoute un bouton et appelle le rappel après un clic.Checkbox (label: string, checked: boolean, onChange: (boolean) -> ()) -> ImGuiWindow Ajoute une case à cocher initialisée à l'état fourni.CollapsingHeader (label: string, content: (ImGuiWindow) -> ()) -> ImGuiWindow Regroupe les contrôles ajoutés par le rappel de contenu sous un en-tête réduit.ColorPicker (label: string, red: number?, green: number?, blue: number?, alpha: number?, onChange: (number, number, number, number) -> ()) -> ImGuiWindow Ajoute un éditeur RGBA ; les composants de couleur omis sont par défaut 1,0.InputText (label: string, text: string?, onChange: (string) -> ()) -> ImGuiWindow Ajoute une entrée de texte sur une seule ligne ; le texte initial omis est par défaut une chaîne vide.SameLine () -> ImGuiWindow Place le contrôle suivant sur la même ligne.Separator () -> ImGuiWindow Ajoute un séparateur horizontal.SliderFloat (label: string, value: number, minimum: number, maximum: number, onChange: (number) -> ()) -> ImGuiWindow Ajoute un curseur à virgule flottante.SliderInt (label: string, value: integer, minimum: integer, maximum: integer, onChange: (number) -> ()) -> ImGuiWindow Ajoute un curseur entier.Text (text: string) -> ImGuiWindow Ajoute du texte non interactif.destroy () -> () Supprime la fenêtre et libère ses rappels enregistrés.