> ## Documentation Index
> Fetch the complete documentation index at: https://docs.projectreal.gg/llms.txt
> Use this file to discover all available pages before exploring further.

# imgui.create

> สร้าง ImGui window record ที่ถูกติดตามและส่งคืน ImGuiWindow object อาร์กิวเมนต์ title ใช้ "REAL_IM_UI" เมื่อถูกละเว้นหรือเป็น nil title ต้องไม่ซ้ำใน ImGui windows ที่ถูกติดตามอยู่ตอนนี้ การสร้าง tracked window อีกอันด้วย title เดียวกันจะทำให้เกิด Lua error

<div className="real-function-page">
  ```lua theme={null}
  imgui.create(title?: string): ImGuiWindow
  ```

  ## Arguments

  <ParamField path={"title"} type={"string"}>
    Optional window title เมื่อถูกละเว้นหรือเป็น nil จะใช้ "REAL\_IM\_UI" title ที่ซ้ำกันใน ImGui windows ที่ถูกติดตามอยู่ตอนนี้จะทำให้เกิด Lua error
  </ParamField>

  ## Returns

  <ResponseField name={"window"} type={"ImGuiWindow"}>
    ImGuiWindow object ที่มี window methods ลงทะเบียนไว้บน methods ของมัน
  </ResponseField>

  ## Types

  ### ImGuiWindow

  หมายเลขอ้างอิงส่งคืนโดย imgui.create วิธีการสร้างการควบคุมส่งคืนหมายเลขอ้างอิงเดียวกันเพื่อให้สามารถต่อสายได้

  | Name | Type | Required | คำอธิบาย |
  | - | - | - | - |
  | `Button` | `(label: string, onClick: () -> ()) -> ImGuiWindow` | Yes | ผนวกปุ่มและเรียกกลับหลังจากการคลิก |
  | `Checkbox` | `(label: string, checked: any, onChange: (boolean) -> ()) -> ImGuiWindow` | Yes | ผนวกช่องทำเครื่องหมายที่เตรียมใช้งานกับสถานะที่ให้ไว้ |
  | `CollapsingHeader` | `(label: string, content: (ImGuiWindow) -> ()) -> ImGuiWindow` | Yes | การควบคุมกลุ่มต่อท้ายด้วยการเรียกกลับเนื้อหาใต้ส่วนหัวที่ยุบ |
  | `ColorPicker` | `(label: string, red: number?, green: number?, blue: number?, alpha: number?, onChange: (number, number, number, number) -> ()) -> ImGuiWindow` | Yes | ต่อท้ายโปรแกรมแก้ไข RGBA ละเว้นส่วนประกอบสีเริ่มต้นที่ 1.0 |
  | `InputText` | `(label: string, text: string?, onChange: (string) -> ()) -> ImGuiWindow` | Yes | ผนวกการป้อนข้อความบรรทัดเดียว ละเว้นค่าเริ่มต้นของข้อความเริ่มต้นเป็นสตริงว่าง |
  | `SameLine` | `() -> ImGuiWindow` | Yes | วางตัวควบคุมถัดไปบนบรรทัดเดียวกัน |
  | `Separator` | `() -> ImGuiWindow` | Yes | ผนวกตัวคั่นแนวนอน |
  | `SliderFloat` | `(label: string, value: number, minimum: number, maximum: number, onChange: (number) -> ()) -> ImGuiWindow` | Yes | เพิ่มแถบเลื่อนจุดลอยตัวต่อท้าย |
  | `SliderInt` | `(label: string, value: integer, minimum: integer, maximum: integer, onChange: (number) -> ()) -> ImGuiWindow` | Yes | เพิ่มแถบเลื่อนจำนวนเต็มต่อท้าย |
  | `Text` | `(text: string) -> ImGuiWindow` | Yes | ต่อท้ายข้อความที่ไม่โต้ตอบ |
  | `destroy` | `() -> ()` | Yes | ลบหน้าต่างและปล่อยการเรียกกลับที่ลงทะเบียนไว้ |

  ## ตัวอย่าง

  สร้าง ImGui window และเพิ่ม controls ไปยัง ImGuiWindow object ที่ส่งคืน

  ```lua theme={null}
  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)
  ```
</div>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.