MacroPanel

Tạo và hiển thị panel nhập liệu runtime cho tham số macro trong script.

Cú pháp

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

Tham số khởi tạo

TênMô tả
titleString
Tiêu đề panel.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: ""
subtitleString
Phụ đề hoặc mô tả ngắn.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: ""
confirm_textString
Nhãn nút xác nhận.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: "Run"
cancel_textString
Nhãn nút hủy.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: "Cancel"
versionString
Nhãn version tùy chọn được giữ để tương thích; giá trị nhập của MacroPanel được khôi phục từ Storage và lưu vào Storage theo tên biến, không theo version.
Tùy chọn · Chỉ truyền theo tên
Mặc định: ""

Giá trị trả về

Ví dụ

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()

Thuộc tính

TênMô tả
titleString
Tiêu đề panel. Có thể gán lại sau khi khởi tạo.
Mặc định: ""
subtitleString
Phụ đề hoặc mô tả ngắn. Có thể gán lại sau khi khởi tạo.
Mặc định: ""
versionString
Nhãn version tùy chọn được giữ để tương thích; giá trị nhập của MacroPanel được khôi phục từ Storage và lưu vào Storage theo tên biến, không theo version. Có thể gán lại sau khi khởi tạo.
Mặc định: ""
confirm_textString
Nhãn nút xác nhận.
Mặc định: "Run"
cancel_textString
Nhãn nút hủy.
Mặc định: "Cancel"

Phương thức

10 phương thức

MacroPanel.notify

Hiển thị hộp thoại thông tin có chặn trong overlay runtime và tiếp tục sau khi người dùng xác nhận. Chuỗi được giữ nguyên; giá trị có cấu trúc dùng cùng formatter dễ đọc như str(value), bao gồm mở rộng nhiều dòng cho dữ liệu lồng nhau.

Cú pháp

MacroPanel.notify(text)

Tham số

TênMô tả
textAny
Chuỗi thông báo hoặc giá trị có cấu trúc cần hiển thị.
Bắt buộc · Theo vị trí hoặc tên
Không có giá trị mặc định

Giá trị trả về

None — Không có giá trị trả về sau khi người dùng xác nhận.

Ví dụ

# Chờ người dùng xác nhận đã đọc thông báo này
MacroPanel.notify("Macro is ready")

MacroPanel.error

Dừng script bằng cách ném lỗi runtime. Khi chạy macro, overlay hiển thị một lỗi script chuẩn kèm đường dẫn luồng/action; giá trị có cấu trúc dùng cùng formatter dễ đọc như str(value).

Cú pháp

MacroPanel.error(text)

Tham số

TênMô tả
textAny
Chuỗi lỗi hoặc giá trị có cấu trúc cần hiển thị.
Bắt buộc · Theo vị trí hoặc tên
Không có giá trị mặc định

Giá trị trả về

None — Không trả về; ném lỗi runtime.

Ví dụ

# Điều kiện tiên quyết không đạt sẽ kết thúc toàn bộ lượt Run
if not TfliteModel.exists("enemy_detector"):
    MacroPanel.error("Import enemy_detector in Template Manager")

MacroPanel.edit_text

Thêm ô nhập văn bản. Dùng desc để hiện mô tả nhỏ bên dưới ô nhập, và input_type="number" để nhập số trong khi giá trị trả về vẫn là String.

Cú pháp

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

Tham số

TênMô tả
nameString
Tên biến trả về trong kết quả panel.
Bắt buộc · Theo vị trí hoặc tên
Không có giá trị mặc định
labelString?
Nhãn hiển thị. Để trống nếu muốn ẩn nhãn.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: None
defaultString
Giá trị mặc định.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: ""
descString?
Mô tả nhỏ hiển thị bên dưới ô nhập này.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: None
input_typeString
Dùng "text" để nhập chữ thông thường hoặc "number" để nhập số. Giá trị trả về vẫn là String.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: "text"

Giá trị trả về

MacroPanel — Trả về chính panel để chain.

Ví dụ

# Tạo bảng điều khiển và chờ người dùng xác nhận
panel = MacroPanel("Settings")
panel.edit_text("player", label="Player", default="Guest")
result = panel.show()
print(result)

MacroPanel.checkbox

Thêm input checkbox.

Cú pháp

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

Tham số

TênMô tả
nameString
Tên biến.
Bắt buộc · Theo vị trí hoặc tên
Không có giá trị mặc định
labelString?
Nhãn hiển thị. Để trống nếu muốn ẩn nhãn.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: None
checkedBoolean
Trạng thái mặc định.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: False

Giá trị trả về

MacroPanel — Trả về chính panel để chain.

Ví dụ

# Tạo bảng điều khiển và chờ người dùng xác nhận
panel = MacroPanel("Settings")
panel.checkbox("sound", label="Sound", checked=True)
result = panel.show()
print(result)

MacroPanel.toggle_switch

Thêm input công tắc bật/tắt.

Cú pháp

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

Tham số

TênMô tả
nameString
Tên biến.
Bắt buộc · Theo vị trí hoặc tên
Không có giá trị mặc định
labelString?
Nhãn hiển thị. Để trống nếu muốn ẩn nhãn.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: None
checkedBoolean
Trạng thái bật/tắt mặc định.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: False

Giá trị trả về

MacroPanel — Trả về chính panel để chain.

Ví dụ

# Tạo bảng điều khiển và chờ người dùng xác nhận
panel = MacroPanel("Settings")
panel.toggle_switch("enabled", label="Enabled", checked=True)
result = panel.show()
print(result)

MacroPanel.radio_group

Thêm bộ chọn radio-group, hoặc hiển thị dạng dropdown khi dropdown=True.

Cú pháp

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

Tham số

TênMô tả
nameString
Tên biến.
Bắt buộc · Theo vị trí hoặc tên
Không có giá trị mặc định
optionslist[String]
Danh sách lựa chọn.
Bắt buộc · Theo vị trí hoặc tên
Không có giá trị mặc định
labelString?
Nhãn hiển thị. Để trống nếu muốn ẩn nhãn.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: None
defaultString|Int|None
Nhãn lựa chọn mặc định hoặc chỉ số lựa chọn 0-based; None chọn lựa chọn đầu tiên.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: None
dropdownBoolean
Hiển thị bộ chọn này dạng dropdown thay vì các lựa chọn radio.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: False

Giá trị trả về

MacroPanel — Trả về chính panel để chain.

Ví dụ

# Tạo bảng điều khiển và chờ người dùng xác nhận
panel = MacroPanel("Settings")
panel.radio_group("mode", ["slow", "fast"], label="Mode", default="slow")
result = panel.show()
print(result)

MacroPanel.slider

Thêm thanh trượt số.

Cú pháp

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

Tham số

TênMô tả
nameString
Tên biến.
Bắt buộc · Theo vị trí hoặc tên
Không có giá trị mặc định
minNumber
Giá trị nhỏ nhất.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: 0
maxNumber
Giá trị lớn nhất.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: 100
stepNumber
Bước nhảy giữa các giá trị.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: 1
labelString?
Nhãn hiển thị. Để trống nếu muốn ẩn nhãn.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: None
defaultNumber?
Giá trị mặc định, được giới hạn theo min/max.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: min

Giá trị trả về

MacroPanel — Trả về chính panel để chain.

Ví dụ

# Tạo bảng điều khiển và chờ người dùng xác nhận
panel = MacroPanel("Settings")
panel.slider("speed", min=1, max=10, step=1, default=5)
result = panel.show()
print(result)

MacroPanel.stepper

Thêm bộ tăng/giảm số với nút +/-.

Cú pháp

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

Tham số

TênMô tả
nameString
Tên biến.
Bắt buộc · Theo vị trí hoặc tên
Không có giá trị mặc định
minNumber
Giá trị nguyên nhỏ nhất.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: 0
maxNumber
Giá trị nguyên lớn nhất.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: 100
stepNumber
Bước nhảy.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: 1
labelString?
Nhãn hiển thị. Để trống nếu muốn ẩn nhãn.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: None
defaultNumber?
Giá trị mặc định, được giới hạn theo min/max.
Tùy chọn · Theo vị trí hoặc tên
Mặc định: min

Giá trị trả về

MacroPanel — Trả về chính panel để chain.

Ví dụ

# Tạo bảng điều khiển và chờ người dùng xác nhận
panel = MacroPanel("Settings")
panel.stepper("count", min=1, max=20, step=1, default=3)
result = panel.show()
print(result)

MacroPanel.text

Thêm khối text HTML. Các thẻ cơ bản hiển thị inline, còn đoạn có CSS như thẻ hướng dẫn, vùng màu, hàng flex, gradient và bo góc sẽ hiển thị bằng WebView đã khóa JavaScript và chặn điều hướng ra ngoài.

Cú pháp

panel.text(html)

Tham số

TênMô tả
htmlString
Nội dung HTML cần hiển thị.
Bắt buộc · Theo vị trí hoặc tên
Không có giá trị mặc định

Giá trị trả về

MacroPanel — Trả về chính panel để chain.

Ví dụ

# Tạo bảng điều khiển và chờ người dùng xác nhận
panel = MacroPanel("Settings")
panel.text("<b>Ready</b>")
result = panel.show()
print(result)

MacroPanel.show

Hiển thị panel và trả về giá trị người dùng đã nhập với đúng kiểu. Giá trị Storage có cùng tên biến sẽ được dùng làm mặc định của ô nhập, và giá trị đã xác nhận được lưu lại vào Storage theo tên biến: checkbox/công tắc là Boolean, slider là Number, stepper là Int, radio/dropdown là chỉ số lựa chọn Int 0-based, còn edit text là String cho văn bản thông thường (hoặc kiểu số / dữ liệu tương ứng tùy cấu hình hoặc giá trị lưu). Nếu cùng lệnh panel.show() bật lại liên tục mà không có thao tác runtime khác, runtime sẽ dừng script để tránh vòng lặp panel vô hạn.

Cú pháp

panel.show()

Giá trị trả về

dict — dict dạng variableName -> giá trị đúng kiểu.

Ví dụ

# Tạo bảng điều khiển và chờ người dùng xác nhận
panel = MacroPanel("Settings")
panel.checkbox("enabled", checked=True)
result = panel.show()
print(result)