Runtime v2.81 · Diperbarui 30 Sep 2026

MacroPanel

Buat dan tampilkan panel input runtime untuk parameter makro yang dikontrol skrip.

Sintaks

MacroPanel(title="", subtitle="", confirm_text="Run", cancel_text="Cancel", *, version="")

Parameter konstruktor

NamaDeskripsi
titleString
Panel title.
Opsional · Posisi atau nama
Default: ""
subtitleString
Panel subtitle/helper text.
Opsional · Posisi atau nama
Default: ""
confirm_textString
Confirm button label.
Opsional · Posisi atau nama
Default: "Run"
cancel_textString
Cancel button label.
Opsional · Posisi atau nama
Default: "Cancel"
versionString
Label version opsional yang dipertahankan untuk kompatibilitas; nilai input MacroPanel dipulihkan dari Storage dan disimpan ke Storage berdasarkan nama variabel, bukan berdasarkan version.
Opsional · Hanya nama
Default: ""

Nilai yang dikembalikan

MacroPanel

Perilaku / efek samping

Buat dan tampilkan panel input runtime untuk parameter makro yang dikontrol skrip.

Eksekusi

  • Menunggu selesai: Bersyarat
  • Keamanan akses bersamaan: Dijalankan berurutan
  • Eksekusi paralel: Bersyarat

Simpan builder panel dalam alurnya sendiri. show() dan notify() interaktif diserialkan oleh kunci prompt runtime dan menunggu pengguna. error() menghentikan eksekusi dengan kesalahan yang memengaruhi seluruh Run.

Contoh

panel = MacroPanel("Run config", "Pick options before run", confirm_text="Start", cancel_text="Back")
panel.text("<b>Ready?</b>")
panel.checkbox("safe_mode", "Safe mode", checked=True)
panel.toggle_switch("retry", "Auto retry", checked=False)
panel.edit_text("username", default="player01", desc="Shown below the field")
panel.edit_text("runs", "Runs", default="3", desc="Numbers only", input_type="number")
panel.radio_group("mode", ["farm", "pvp"], default="farm")
panel.radio_group("target", ["boss", "minion"], default="boss", dropdown=True)
panel.slider("speed", min=0, max=100, step=5, default=60)
panel.stepper("retry_count", min=0, max=10, step=1, default=2)
values = panel.show()

Kesalahan / batasan

Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.

API terkait

Field

NamaDeskripsi
titleString
Panel title. Writable after construction.
Default: ""
subtitleString
Panel subtitle/helper text. Writable after construction.
Default: ""
versionString
Label version opsional yang dipertahankan untuk kompatibilitas; nilai input MacroPanel dipulihkan dari Storage dan disimpan ke Storage berdasarkan nama variabel, bukan berdasarkan version. Dapat ditulis ulang setelah dibuat.
Default: ""
confirm_textString
Confirm button label.
Default: "Run"
cancel_textString
Cancel button label.
Default: "Cancel"

Metode

10 metode

MacroPanel.notify

Tampilkan dialog info pemblokiran di runtime overlay dan lanjutkan setelah pengguna mengonfirmasi.

Sintaks

MacroPanel.notify(text)

Parameter

NamaDeskripsi
textAny
Message text or structured value to display.
Wajib · Posisi atau nama
Tanpa nilai bawaan

Nilai yang dikembalikan

None — Tidak ada nilai pengembalian setelah konfirmasi pengguna.

Perilaku / efek samping

Tampilkan dialog info pemblokiran di runtime overlay dan lanjutkan setelah pengguna mengonfirmasi. String tetap tidak berubah; nilai terstruktur menggunakan formatter yang dapat dibaca seperti str(value), termasuk perluasan multi-baris untuk konten bertingkat.

Eksekusi

  • Menunggu selesai: Ya
  • Keamanan akses bersamaan: Dijalankan berurutan
  • Eksekusi paralel: Bersyarat

Menunggu konfirmasi pengguna melalui kunci prompt runtime bersama. Prompt bersamaan diserialkan.

Contoh

# Tunggu pengguna mengakui pesan ini
MacroPanel.notify("Macro is ready")

Kesalahan / batasan

Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.

API terkait

MacroPanel.error

Hentikan eksekusi skrip dengan menimbulkan kesalahan runtime.

Sintaks

MacroPanel.error(text)

Parameter

NamaDeskripsi
textAny
Error text or structured value to display.
Wajib · Posisi atau nama
Tanpa nilai bawaan

Nilai yang dikembalikan

None — Tidak kembali; memunculkan kesalahan runtime.

Perilaku / efek samping

Hentikan eksekusi skrip dengan menimbulkan kesalahan runtime. Selama makro berjalan, hamparan memperlihatkan satu kesalahan skrip standar dengan jalur aliran/tindakan; nilai terstruktur menggunakan formatter yang dapat dibaca sama seperti str(nilai).

Eksekusi

  • Menunggu selesai: Tidak
  • Keamanan akses bersamaan: Dijalankan berurutan
  • Eksekusi paralel: Tidak

Memunculkan kesalahan skrip fatal; semua cabang Run berhenti. Ini bukan prompt konfirmasi.

Contoh

# Prasyarat yang gagal mengakhiri seluruh Run
if not TfliteModel.exists("enemy_detector"):
    MacroPanel.error("Import enemy_detector in Template Manager")

Kesalahan / batasan

Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.

API terkait

MacroPanel.edit_text

Tambahkan bidang teks yang dapat diedit.

Sintaks

panel.edit_text(name, label=None, default="", desc=None, input_type="text")

Parameter

NamaDeskripsi
nameString
Variable name to return in panel result.
Wajib · Posisi atau nama
Tanpa nilai bawaan
labelString?
Display label. Leave empty to hide label.
Opsional · Posisi atau nama
Default: None
defaultString
Default text value.
Opsional · Posisi atau nama
Default: ""
descString?
Small helper text displayed below this field.
Opsional · Posisi atau nama
Default: None
input_typeString
Use "text" for normal text or "number" for numeric input. The result value remains a String.
Opsional · Posisi atau nama
Default: "text"

Nilai yang dikembalikan

MacroPanel — Panel yang sama untuk rangkaian yang lancar.

Perilaku / efek samping

Tambahkan bidang teks yang dapat diedit. Gunakan desc untuk teks pembantu kecil di bawah bidang, dan input_type="number" untuk menampilkan input numerik sementara nilai yang dikembalikan tetap berupa String.

Eksekusi

  • Menunggu selesai: Bersyarat
  • Keamanan akses bersamaan: Dijalankan berurutan
  • Eksekusi paralel: Bersyarat

Simpan builder panel dalam alurnya sendiri. show() dan notify() interaktif diserialkan oleh kunci prompt runtime dan menunggu pengguna. error() menghentikan eksekusi dengan kesalahan yang memengaruhi seluruh Run.

Contoh

# Buat panel dan tunggu konfirmasi pengguna
panel = MacroPanel("Settings")
panel.edit_text("player", label="Player", default="Guest")
result = panel.show()
print(result)

Kesalahan / batasan

Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.

API terkait

MacroPanel.checkbox

Tambahkan masukan kotak centang.

Sintaks

panel.checkbox(name, label=None, checked=False)

Parameter

NamaDeskripsi
nameString
Variable name.
Wajib · Posisi atau nama
Tanpa nilai bawaan
labelString?
Display label. Leave empty to hide label.
Opsional · Posisi atau nama
Default: None
checkedBoolean
Default checked state.
Opsional · Posisi atau nama
Default: False

Nilai yang dikembalikan

MacroPanel — Panel yang sama untuk rangkaian yang lancar.

Perilaku / efek samping

Tambahkan masukan kotak centang.

Eksekusi

  • Menunggu selesai: Bersyarat
  • Keamanan akses bersamaan: Dijalankan berurutan
  • Eksekusi paralel: Bersyarat

Simpan builder panel dalam alurnya sendiri. show() dan notify() interaktif diserialkan oleh kunci prompt runtime dan menunggu pengguna. error() menghentikan eksekusi dengan kesalahan yang memengaruhi seluruh Run.

Contoh

# Buat panel dan tunggu konfirmasi pengguna
panel = MacroPanel("Settings")
panel.checkbox("sound", label="Sound", checked=True)
result = panel.show()
print(result)

Kesalahan / batasan

Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.

API terkait

MacroPanel.toggle_switch

Tambahkan masukan sakelar sakelar.

Sintaks

panel.toggle_switch(name, label=None, checked=False)

Parameter

NamaDeskripsi
nameString
Variable name.
Wajib · Posisi atau nama
Tanpa nilai bawaan
labelString?
Display label. Leave empty to hide label.
Opsional · Posisi atau nama
Default: None
checkedBoolean
Default toggle state.
Opsional · Posisi atau nama
Default: False

Nilai yang dikembalikan

MacroPanel — Panel yang sama untuk rangkaian yang lancar.

Perilaku / efek samping

Tambahkan masukan sakelar sakelar.

Eksekusi

  • Menunggu selesai: Bersyarat
  • Keamanan akses bersamaan: Dijalankan berurutan
  • Eksekusi paralel: Bersyarat

Simpan builder panel dalam alurnya sendiri. show() dan notify() interaktif diserialkan oleh kunci prompt runtime dan menunggu pengguna. error() menghentikan eksekusi dengan kesalahan yang memengaruhi seluruh Run.

Contoh

# Buat panel dan tunggu konfirmasi pengguna
panel = MacroPanel("Settings")
panel.toggle_switch("enabled", label="Enabled", checked=True)
result = panel.show()
print(result)

Kesalahan / batasan

Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.

API terkait

MacroPanel.radio_group

Tambahkan pemilih grup radio, atau render sebagai dropdown ketika dropdown=True.

Sintaks

panel.radio_group(name, options, label=None, default=None, dropdown=False)

Parameter

NamaDeskripsi
nameString
Variable name.
Wajib · Posisi atau nama
Tanpa nilai bawaan
optionslist[String]
Selectable options.
Wajib · Posisi atau nama
Tanpa nilai bawaan
labelString?
Display label. Leave empty to hide label.
Opsional · Posisi atau nama
Default: None
defaultString|Int|None
Default option label or 0-based option index; None selects the first option.
Opsional · Posisi atau nama
Default: None
dropdownBoolean
Render this selector as a dropdown instead of radio options.
Opsional · Posisi atau nama
Default: False

Nilai yang dikembalikan

MacroPanel — Panel yang sama untuk rangkaian yang lancar.

Perilaku / efek samping

Tambahkan pemilih grup radio, atau render sebagai dropdown ketika dropdown=True.

Eksekusi

  • Menunggu selesai: Bersyarat
  • Keamanan akses bersamaan: Dijalankan berurutan
  • Eksekusi paralel: Bersyarat

Simpan builder panel dalam alurnya sendiri. show() dan notify() interaktif diserialkan oleh kunci prompt runtime dan menunggu pengguna. error() menghentikan eksekusi dengan kesalahan yang memengaruhi seluruh Run.

Contoh

# Buat panel dan tunggu konfirmasi pengguna
panel = MacroPanel("Settings")
panel.radio_group("mode", ["slow", "fast"], label="Mode", default="slow")
result = panel.show()
print(result)

Kesalahan / batasan

Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.

API terkait

MacroPanel.slider

Tambahkan penggeser numerik.

Sintaks

panel.slider(name, min=0, max=100, step=1, label=None, default=None)

Parameter

NamaDeskripsi
nameString
Variable name.
Wajib · Posisi atau nama
Tanpa nilai bawaan
minNumber
Minimum value.
Opsional · Posisi atau nama
Default: 0
maxNumber
Maximum value.
Opsional · Posisi atau nama
Default: 100
stepNumber
Step size between values.
Opsional · Posisi atau nama
Default: 1
labelString?
Display label. Leave empty to hide label.
Opsional · Posisi atau nama
Default: None
defaultNumber?
Default value, clamped to min/max.
Opsional · Posisi atau nama
Default: min

Nilai yang dikembalikan

MacroPanel — Panel yang sama untuk rangkaian yang lancar.

Perilaku / efek samping

Tambahkan penggeser numerik.

Eksekusi

  • Menunggu selesai: Bersyarat
  • Keamanan akses bersamaan: Dijalankan berurutan
  • Eksekusi paralel: Bersyarat

Simpan builder panel dalam alurnya sendiri. show() dan notify() interaktif diserialkan oleh kunci prompt runtime dan menunggu pengguna. error() menghentikan eksekusi dengan kesalahan yang memengaruhi seluruh Run.

Contoh

# Buat panel dan tunggu konfirmasi pengguna
panel = MacroPanel("Settings")
panel.slider("speed", min=1, max=10, step=1, default=5)
result = panel.show()
print(result)

Kesalahan / batasan

Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.

API terkait

MacroPanel.stepper

Tambahkan stepper numerik dengan kontrol +/-.

Sintaks

panel.stepper(name, min=0, max=100, step=1, label=None, default=None)

Parameter

NamaDeskripsi
nameString
Variable name.
Wajib · Posisi atau nama
Tanpa nilai bawaan
minNumber
Minimum integer value.
Opsional · Posisi atau nama
Default: 0
maxNumber
Maximum integer value.
Opsional · Posisi atau nama
Default: 100
stepNumber
Step size.
Opsional · Posisi atau nama
Default: 1
labelString?
Display label. Leave empty to hide label.
Opsional · Posisi atau nama
Default: None
defaultNumber?
Default value, clamped to min/max.
Opsional · Posisi atau nama
Default: min

Nilai yang dikembalikan

MacroPanel — Panel yang sama untuk rangkaian yang lancar.

Perilaku / efek samping

Tambahkan stepper numerik dengan kontrol +/-.

Eksekusi

  • Menunggu selesai: Bersyarat
  • Keamanan akses bersamaan: Dijalankan berurutan
  • Eksekusi paralel: Bersyarat

Simpan builder panel dalam alurnya sendiri. show() dan notify() interaktif diserialkan oleh kunci prompt runtime dan menunggu pengguna. error() menghentikan eksekusi dengan kesalahan yang memengaruhi seluruh Run.

Contoh

# Buat panel dan tunggu konfirmasi pengguna
panel = MacroPanel("Settings")
panel.stepper("count", min=1, max=20, step=1, default=3)
result = panel.show()
print(result)

Kesalahan / batasan

Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.

API terkait

MacroPanel.text

Tambahkan blok teks HTML.

Sintaks

panel.text(html)

Parameter

NamaDeskripsi
htmlString
HTML content to display.
Wajib · Posisi atau nama
Tanpa nilai bawaan

Nilai yang dikembalikan

MacroPanel — Panel yang sama untuk rangkaian yang lancar.

Perilaku / efek samping

Tambahkan blok teks HTML. Tag dasar dirender sebaris, dan fragmen bergaya CSS seperti kartu, bagian berwarna, baris fleksibel, gradien, dan kotak bulat dirender dalam WebView yang terkunci dengan JavaScript dan navigasi eksternal dinonaktifkan.

Eksekusi

  • Menunggu selesai: Bersyarat
  • Keamanan akses bersamaan: Dijalankan berurutan
  • Eksekusi paralel: Bersyarat

Simpan builder panel dalam alurnya sendiri. show() dan notify() interaktif diserialkan oleh kunci prompt runtime dan menunggu pengguna. error() menghentikan eksekusi dengan kesalahan yang memengaruhi seluruh Run.

Contoh

# Buat panel dan tunggu konfirmasi pengguna
panel = MacroPanel("Settings")
panel.text("<b>Ready</b>")
result = panel.show()
print(result)

Kesalahan / batasan

Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.

API terkait

MacroPanel.show

Tampilkan panel dan kembalikan nilai input pengguna sesuai tipe.

Sintaks

panel.show()

Parameter

Tidak ada

Nilai yang dikembalikan

dict — dict dari VariableName -> nilai yang diketik.

Perilaku / efek samping

Tampilkan panel dan kembalikan nilai input pengguna sesuai tipe. Nilai Storage yang memiliki nama variabel yang sama menjadi nilai default field, dan nilai yang dikonfirmasi disimpan kembali ke Storage berdasarkan nama variabel: nilai checkbox/toggle adalah Boolean, nilai slider adalah Number, nilai stepper adalah Int, nilai radio/dropdown adalah indeks opsi Int berbasis 0, dan nilai edit text adalah String untuk teks normal (atau tipe numerik/tersimpan yang sesuai). Jika panggilan panel.show() yang sama terbuka berulang tanpa tindakan runtime lain, runtime akan menghentikan skrip untuk menghindari loop panel tanpa akhir.

Eksekusi

  • Menunggu selesai: Ya
  • Keamanan akses bersamaan: Dijalankan berurutan
  • Eksekusi paralel: Bersyarat

Menunggu konfirmasi pengguna melalui kunci prompt runtime bersama. Prompt bersamaan diserialkan.

Contoh

# Buat panel dan tunggu konfirmasi pengguna
panel = MacroPanel("Settings")
panel.checkbox("enabled", checked=True)
result = panel.show()
print(result)

Kesalahan / batasan

Tidak ada batasan tambahan yang didokumentasikan; ikuti kontrak parameter dan perilaku di atas.

API terkait