Skip to content

historybox_CN

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

historybox - 历史记录框

[img]

最后还是决定做一个DDLC菜单风格的历史记录框

dokibox.historybox()
参数 类型 默认 说明
data None, str或其他类型 "" 作为历史记录的解析字符串,一般有dialogbox和Diaenterbox自动传输
pinned bool True 是否置顶

historybox一般不从用户端调用,最常用的用法是dialogbox或者diaenterbox调用

data的三种情况

  1. data 为空字符串或未传入:从 dokibox.dialogbox._history 导入历史记录列表
  2. data 是字符串:创建单条记录 [("", data)],其中第一个元素为空字符串(表示没有发送者名称(旁白)),第二个元素是消息内容
  3. data 是其他类型:直接作为 records 使用,预期格式为 [(name, message), ...] 的列表/元组

对于第三点所描述的类型的例子

records = [
    ("莫妮卡", "欢迎来到文学部!"),
    ("纱世里", "今天天气真好呢"),
    ("优里", "我在读一本有趣的书..."),
    ("夏树", "Baka! 才不是傲娇呢"),
]

dokibox.historybox(records)

addhistory()函数 {#addhistorycn}

由于dokibox的性质是GUI库,目前的历史记录只存在于内存中

addhistory是用于载入对话历史记录而产生的历史对话

用法

元组列表

dokibox.addhistory([("莫妮卡", "你好"), ("纱世里", "你好呀")])

字典列表

dokibox.addhistory([{"name":"尤里", "msg":"大家好"}])

JSON 字符串

import json
dokibox.addhistory(json.dumps([{"name":"夏树", "msg":"哼!"}], ensure_ascii=False))

Clone this wiki locally