From 15bb9959dbbd3cf9070c7a4f3e40f85c1ec31e04 Mon Sep 17 00:00:00 2001 From: jkpete <1031139173@qq.com> Date: Sat, 19 Jul 2025 09:10:47 +0800 Subject: [PATCH] add dialog generate in manual --- Example/SaveSystem/Script/ViewSaveSystem.cs | 20 +++++++++++++++++--- Manual/GenerateTools.md | 20 ++++++++++++++++++++ 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/Example/SaveSystem/Script/ViewSaveSystem.cs b/Example/SaveSystem/Script/ViewSaveSystem.cs index 1cf5883..201682a 100644 --- a/Example/SaveSystem/Script/ViewSaveSystem.cs +++ b/Example/SaveSystem/Script/ViewSaveSystem.cs @@ -16,9 +16,10 @@ namespace EGFramework.Examples.Test { Container container{ set; get; } public override void _Ready() { - TestTree(); - TestTable(); - TestJson(); + // TestTree(); + // TestTable(); + // TestJson(); + TestDialog(); } public override void _ExitTree() @@ -26,6 +27,19 @@ namespace EGFramework.Examples.Test { } + public void TestDialog() + { + DataStudent dataStudent = new DataStudent(); + dataStudent.EGenerateDictiontaryByObject(); + this.ExecuteAfterSecond(() => + { + this.EGEditDialog(new DataStudent().EGenerateDictiontaryByObject(), e => + { + GD.Print("Name:" + e["Name"] + "Age:" + e["Age"]); + }, "Edit"); + },0.2f); + } + public void TestJson() { string json = @"{ diff --git a/Manual/GenerateTools.md b/Manual/GenerateTools.md index 792b335..fb7b886 100644 --- a/Manual/GenerateTools.md +++ b/Manual/GenerateTools.md @@ -97,3 +97,23 @@ public void TestTree() ``` ![GenerateTools_001](Img/GenerateTools_003.JPG) + +## 🚪弹出一个可编辑弹窗 + +使用上述定义过的DataStudent,我们创建一个可编辑弹窗,并且在弹窗编辑完成后打印编辑后的内容。由于Godot子节点先加载,父节点后加载的机制,需要等待父节点实例化之后才能调用弹窗功能,我们使用一个延时方法(参考NodeExtension-EGThread部分),延时弹出该弹窗。 + +```csharp +public void TestDialog() +{ + DataStudent dataStudent = new DataStudent(); + dataStudent.EGenerateDictiontaryByObject(); + this.ExecuteAfterSecond(() => + { + this.EGEditDialog(new DataStudent().EGenerateDictiontaryByObject(), e => + { + GD.Print("Name:" + e["Name"] + "Age:" + e["Age"]); + }, "Edit"); + },0.2f); +} +``` +