Chuyển tới nội dung chính

! Hiển thị hộp thoại và trả về lựa chọn của người dùng (:show)

Khai báo

confirmed, selections = dlg:show()

Giá trị trả về

  • confirmed
    Boolean. Nút Gửi có được nhấn hay không. Trả về false khi hết thời gian hoặc khi đóng bằng dấu “×”.
  • selections
    Bảng. Bảng khóa-giá trị được ánh xạ theo nhãn tùy chọn.

Mô tả

Hiển thị hộp thoại và trả về các lựa chọn của người dùng.
Nếu đã bật lưu cấu hình bằng :set_config(name), nhấn Gửi sẽ lưu cấu hình; đóng bằng “×” hoặc hết thời gian sẽ không lưu.

Ví dụ đơn giản

local c, s = dialog():add_switch('Một công tắc', false):show()
sys.alert(s['Một công tắc'])

Lưu ý: Sử dụng sys.alert

Ví dụ phức tạp

local dlg = dialog() -- tạo đối tượng hộp thoại
--
-- cấu hình hộp thoại
dlg:set_config('test') -- ID lưu cấu hình
dlg:set_timeout(30)
dlg:add_label('Bản minh họa đơn giản')
dlg:add_range('HP', {0, 1000, 1}, 300)
dlg:add_input('Tài khoản', 'ccc')
dlg:add_input('Mật khẩu', 'aaaa')
dlg:add_picker('Giới tính', {'Nam', 'Nữ', 'Không xác định'}, 'Nam')
dlg:add_switch('Bật chế độ gỡ lỗi', false)
dlg:add_checkbox('Trò chơi yêu thích', {'Overwatch', 'World of Warcraft', 'Hearthstone'}, {'Overwatch', 'World of Warcraft'})
dlg:add_radio('Trò chơi yêu thích nhất', {'Overwatch', 'World of Warcraft', 'Hearthstone'}, 'World of Warcraft')
--
local confirm, selects = dlg:show() -- hiển thị và nhận kết quả
--
if (confirm) then
print("Bạn đã nhấn Gửi")
else
print("Bạn chưa nhấn Gửi")
end
--
print("Tài khoản", selects["Tài khoản"])
print("Mật khẩu", selects["Mật khẩu"])
print("Giới tính", selects["Giới tính"])
print("HP", selects["HP"])
--
if (selects['Bật chế độ gỡ lỗi']) then
print("Chế độ gỡ lỗi đang bật")
else
print("Chế độ gỡ lỗi đang tắt")
end
--
print("Các trò chơi yêu thích của bạn")
for _, gamename in ipairs(selects['Trò chơi yêu thích']) do
print(gamename)
end
--
print("Trò chơi bạn yêu thích nhất: "..selects["Trò chơi yêu thích nhất"])
--
sys.alert(print.out())

Lưu ý: Sử dụng sys.alert, print, print.out