Skip to content

dialogbox_bottombtn_CN

windows99-hue edited this page Jul 20, 2026 · 1 revision

dialogbox的下方按钮

在dokiboxv2.8.0以后,dokibox终于拥有了类似原版的选项按钮啦!

菜单按钮概览

dialogbox 底部会显示一行菜单按钮,从左到右依次为:

按钮 功能 说明
历史 打开历史记录 调用 historybox 显示对话历史,dokibox会自动记录从程序开始前的每一句话,你也可以通过addhistory来添加历史记录
快进 切换快进模式 启用后自动快速跳过对话,再次点击取消
自动 切换自动模式 启用后对话自动推进,再次点击取消
保存 执行保存回调 需要设置 savecall 参数,否则按钮不可用
加载 执行加载回调 需要设置 loadcall 参数,否则按钮不可用
设置 执行设置回调 需要设置 settingscall 参数,否则按钮不可用

历史记录功能

历史 按钮可以调出历史记录框,dokibox 会自动记录从程序开始前的每一句话。

自动记录

每次调用 dialogbox() 时,对话内容会自动添加到历史记录中:

import dokibox

# 这些对话会自动被记录
dokibox.dialogbox("你好,世界!", name="Monika")
dokibox.dialogbox("今天天气真好呢。", name="Sayori")

addhistory() 手动添加

你也可以通过 addhistory() 来手动添加历史记录:

查看历史记录

点击 dialogbox 底部的 历史 按钮,会弹出 historybox 窗口显示所有历史记录。

保存/加载/设置 回调

保存加载设置 按钮默认是禁用状态(灰色不可点击)。你需要通过参数传入回调函数来启用它们:

import dokibox

def on_save():
    print("执行保存逻辑...")
    # 在这里实现存档功能

def on_load():
    print("执行读取逻辑...")
    # 在这里实现读档功能

def on_settings():
    print("打开设置界面...")
    # 在这里实现设置功能

dokibox.dialogbox(
    "欢迎来到我的视觉小说!",
    name="Monika",
    savecall=on_save,
    loadcall=on_load,
    settingscall=on_settings
)

全局回调设置

你也可以通过全局变量一次性设置所有 dialogbox 的回调:

import dokibox

# 设置全局回调
dokibox.dialogbox.save = on_save
dokibox.dialogbox.load = on_load
dokibox.dialogbox.settings = on_settings

# 之后所有 dialogbox 都会使用这些回调
dokibox.dialogbox("第一段对话...", name="Sayori")
dokibox.dialogbox("第二段对话...", name="Yuri")

注意:局部传入的 savecall/loadcall/settingscall 参数优先级高于全局设置。

快进与自动模式

快进模式 (Skip)

点击 快进 按钮切换快进模式:

  • 启用时,按钮文字会高亮显示
  • 对话会以极快的速度自动推进(每句约 100ms 延迟)
  • 再次点击取消快进模式
# 快进模式下,typewriter 效果会被禁用
dokibox.dialogbox("这段对话会在快进模式下快速显示", name="Monika")

自动模式 (Auto)

点击 自动 按钮切换自动模式:

  • 启用时,按钮文字会高亮显示
  • 对话会在显示完毕后自动推进(延迟时间根据文本长度动态计算)
  • 再次点击取消自动模式
# 自动模式下,对话会自动推进
dokibox.dialogbox("第一句话", name="Sayori")
dokibox.dialogbox("第二句话会在几秒后自动出现", name="Sayori")

提示:快进和自动模式互斥,启用一个会自动关闭另一个。

Clone this wiki locally