当前位置:   article > 正文

47-tkinter-ttkbootstrap-dialogs对话框模块_ttkbootstrap.dialogs.dialogs.messagebox

ttkbootstrap.dialogs.dialogs.messagebox

dialogs对话框模块

ColorChooserDialog颜色选择对话框

ttkbootstrap.dialogs.colorchooser.ColorChooserDialog (Dialog)

显示颜色选择器对话框的类。当选择颜色选项并按下 “确定” 按钮时,对话框将返回一个namedtuple,其中包含rgb、hsl和hex的颜色值。可以通过索引元组或使用命名字段来访问这些值。

querybox-get-color

示例
>>> cd = ColorChooserDialog()
>>> cd.show()
>>> colors = cd.result
>>> colors.hex
'#5fb04f'
>>> colors[2]
'#5fb04f
>>> colors.rgb
(95, 176, 79)
>>> colors[0]
(95, 176, 79)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
create_body(self, master)

创建对话框正文。

此方法应被重写并由该方法调用。为小部件设置 应该得到最初的关注。build self._initial_focus

参数:

名字类型描述违约
masterWidget父小组件。必填

源码(ttkbootstrap/dialogs/colorchooser.py)

def create_body(self, master):
    self.colorchooser = ColorChooser(master, self.initialcolor)
    self.colorchooser.pack(fill=BOTH, expand=YES)

  • 1
  • 2
  • 3
  • 4
create_buttonbox(self, master)

创建对话框按钮。

此方法应被重写并由该方法调用。为 按钮设置 应该收到初始焦点。buildself._initial_focus

参数:

名字类型描述违约
masterWidget父小组件。必填

源码(ttkbootstrap/dialogs/colorchooser.py)

def create_buttonbox(self, master):
    frame = ttk.Frame(master, padding=(5, 5))

    # OK button
    ok = ttk.Button(frame, bootstyle=PRIMARY, width=6, text=MessageCatalog.translate('OK'))
    ok.bind("<Return>", lambda _: ok.invoke())
    ok.configure(command=lambda b=ok: self.on_button_press(b))
    ok.pack(padx=2, side=RIGHT)

    # Cancel button
    cancel = ttk.Button(frame, bootstyle=SECONDARY, width=6, text=MessageCatalog.translate('Cancel'))
    cancel.bind("<Return>", lambda _: cancel.invoke())
    cancel.configure(command=lambda b=cancel: self.on_button_press(b))
    cancel.pack(padx=2, side=RIGHT)

    # color dropper (not supported on Mac OS)
    if self._toplevel.winsys != 'aqua':
        dropper = ttk.Label(frame, text=PEN, font=('-size 16'))
        ToolTip(dropper, MessageCatalog.translate('color dropper')) # add tooltip
        dropper.pack(side=RIGHT, padx=2)
        dropper.bind("<Button-1>", self.on_show_colordropper)

    frame.pack(side=BOTTOM, fill=X, anchor=S)

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

ColorDropperDialog颜色滴管对话框

ttkbootstrap.dialogs.colordropper.ColorDropperDialog
显示指示器和缩放窗口的小组件 在屏幕上选择一种颜色。

左键单击鼠标按钮以选择一种颜色。结果是 作为元组存储在属性中, 包含 RGB、HSL 和十六进制颜色模型的命名字段。resultColorChoice

使用鼠标滚轮放大和缩小缩放窗口。

此小部件仅适用于 Windows 和 Linux。

color-dropper

高分辨率显示器

此小部件可能无法在高分辨率下正常运行 如果未在高电平下使用应用程序,则显示 分辨率模式。这是在Windows上自动启用的。

方法:

源代码在ttkbootstrap/dialogs/colordropper.py

方法说明
build_screenshot_canvas(self)构建屏幕截图画布
build_zoom_toplevel(self, master)构建显示缩放版本的顶级微件 鼠标光标下方的像素。
get_hover_color(self)获取鼠标光标悬停的颜色。
on_left_click(self, _)捕获鼠标光标下方的颜色并销毁 顶级小组件
on_mouse_motion(self, event=None)鼠标运动的回调
on_mouse_wheel(self, event)放大和缩小鼠标下方的图像 需要待办事项 需要跨平台测试
on_right_click(self, _)关闭滴管而不保存任何颜色信息
show(self)显示顶级窗口

DatePickerDialog日期选取器对话框

ttkbootstrap.dialogs.dialogs.DatePickerDialog

源代码在ttkbootstrap/dialogs/dialogs.py

显示日历弹出窗口并返回 选择“日期”作为“日期时间”对象。

除非提供参数,否则默认情况下显示当前日期。startdate

可以通过单击左侧的 V 形来更改月份 和月年标题的权利。

左键单击箭头可将日历移动一个月。 右键单击箭头可将日历移动一年。 右键单击标题以将日历重置为开始日期。

可以使用不启动日历的地理位置的参数更改开始工作日 星期日,这是默认值。firstweekday

该小组件会抓取焦点和所有屏幕事件,直到发布。 如果要取消日期选择,请单击“X”按钮 在小部件的右上角。

引导样式 API 可用于更改小部件的样式。 可用颜色包括 ->主要、次要、成功、 信息, 警告, 危险, 光, 黑暗.

date-picker-dialog

__init__(self, 
         parent=None, 
         title=' ',
         firstweekday=6,
         startdate=None,
         bootstyle='primary') special
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

参数:

名字类型描述违约
parentWidget父小部件;弹出窗口将出现在 父小组件的右下角。如果没有父级 前提是,小部件在屏幕上居中。None
titlestr标题栏上显示的文本。' '
firstweekdayint指定一周的第一天。0=星期一, 1=星期二,依此类推…6
startdatedatetime小组件处于焦点中的日期 显示。None
bootstylestr以下颜色可用于更改颜色 标题和悬停/按下的颜色 ->原色, 次要, 信息, 警告, 成功, 危险, 光明, 黑暗.'primary'

Dialog对话框

ttkbootstrap.dialogs.dialogs.Dialog (BaseWidget)
一个简单的对话框基类。

result 属性只读
返回对话框的结果。

__init__(self, parent=None, title='', alert=False) special

  • 1
  • 2

参数:

名字类型描述违约
parentWidget使窗口成为消息框的逻辑父级。 消息框显示在其父窗口的顶部。None
titlestr显示为消息框标题的字符串。 此选项在 Mac OS X 上被忽略,其中平台 准则禁止在此类 对话。''
alertbool显示对话框时按响显示屏的铃铛。False

方法

方法说明
build(self)从设置构建对话框
create_body(self, master)创建对话框正文。
此方法应被重写并由该方法调用。
为小部件设置 应该得到最初的关注。build self._initial_focus
master必填, 父小组件, Widget类型
show(self, position=None)显示弹出对话框
position:元组[int, int] 用于定位对话框的 x 和 y 坐标。
默认情况下,对话框将锚定在 父窗口。

FontDialog字体对话框

ttkbootstrap.dialogs.dialogs.FontDialog (Dialog)

源代码在ttkbootstrap/dialogs/dialogs.py

显示用于选择字体的各种选项的对话框。

此对话框构造并返回一个基于 用户选择的选项。初始字体基于操作系统 设置和会有所不同。Font

当按下 Ok 按钮并返回字体对象时,将返回字体对象 可以传递给任何接受字体配置的小部件 选择。

querybox-get-font

方法说明
create_body(self, master)创建对话框正文。
此方法应被重写并由该方法调用。为小部件设置 应该得到最初的关注。build self._initial_focus
create_buttonbox(self, master)创建对话框按钮。此方法应被重写并由该方法调用。为 按钮设置 应该收到初始焦点。build``self._initial_focus
master必填, 父小组件, Widget类型

Messagebox消息框

源代码在ttkbootstrap/dialogs/dialogs.py

ttkbootstrap.dialogs.dialogs.Messagebox
此类包含各种静态方法,这些方法显示弹出窗口 给最终用户的消息,其中包含各种按钮排列 和警报选项。

ok

ok(message, title=' ', alert=False, parent=None, **kwargs) staticmethod

显示带有“确定”按钮和可选按钮的模式对话框 铃铛警报。

messagebox-ok

参数:

名字类型描述违约
messagestr要在消息框中显示的消息。必填
titlestr显示为消息框标题的字符串。这 选项在 Mac OS X 上被忽略,其中平台指南 禁止在此类对话框中使用标题。' '
alertbool指定是否按显示铃铛。False
parentUnion[Window, Toplevel]使窗口成为消息框的逻辑父级。这 消息框显示在其父窗口的顶部。None
**kwargsDict其他可选关键字参数。{}
okcancel

okcancel(message, title=' ', alert=False, parent=None, **kwargs) staticmethod

显示带有“确定”和“取消”按钮的模式对话框,以及 返回按下的按钮的符号名称。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Z5PYyZkX-1689312721776)(https://gitcode.net/qq_40597070/pic_go/raw/master/202212170039320.png)]

参数:

名字类型描述违约
messagestr要在消息框中显示的消息。必填
titlestr显示为消息框标题的字符串。这 选项在 Mac OS X 上被忽略,其中平台指南 禁止在此类对话框中使用标题。' '
alertbool指定是否按显示铃铛。False
parentUnion[Window, Toplevel]使窗口成为消息框的逻辑父级。这 消息框显示在其父窗口的顶部。None
**kwargsDict其他可选关键字参数。{}

返回:

类型描述
Union[str, None]按下的按钮的符号名称,如果 窗口在不按按钮的情况下关闭。
retrycancel

retrycancel(message, title=' ', alert=False, parent=None, **kwargs) staticmethod

显示带有“重试”和“取消”按钮的模式对话框; 返回所按下按钮的符号名称。

messagebox-retry-cancel

参数:

名字类型描述违约
messagestr要在消息框中显示的消息。必填
titlestr显示为消息框标题的字符串。这 选项在 Mac OS X 上被忽略,其中平台指南 禁止在此类对话框中使用标题。' '
alertbool指定是否按显示铃铛。False
parentUnion[Window, Toplevel]使窗口成为消息框的逻辑父级。这 消息框显示在其父窗口的顶部。None
**kwargsDict其他可选关键字参数。{}

返回:

类型描述
Union[str, None]按下的按钮的符号名称,如果 窗口在不按按钮的情况下关闭。
show_error

show_error(message, title=' ', parent=None, alert=True, **kwargs) staticmethod

显示带有“确定”按钮和 错误图标。也会敲响显示铃。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tdizZ14F-1689312721777)(https://gitcode.net/qq_40597070/pic_go/raw/master/202212170040777.png)]

参数:

名字类型描述违约
messagestr要在消息框中显示的消息。必填
titlestr显示为消息框标题的字符串。这 选项在 Mac OS X 上被忽略,其中平台指南 禁止在此类对话框中使用标题。' '
parentUnion[Window, Toplevel]使窗口成为消息框的逻辑父级。这 消息框显示在其父窗口的顶部。None
alertbool指定是否按显示铃铛。True
**kwargsDict其他可选关键字参数。{}
show_info

show_info(message, title=' ', parent=None, alert=False, **kwargs) staticmethod

显示带有“确定”按钮和“信息”的模式对话框 图标。

messagebox-show-info

参数:

名字类型描述违约
messagestr要在消息框中显示的消息。必填
titlestr显示为消息框标题的字符串。这 选项在 Mac OS X 上被忽略,其中平台指南 禁止在此类对话框中使用标题。' '
parentUnion[Window, Toplevel]使窗口成为消息框的逻辑父级。这 消息框显示在其父窗口的顶部。None
alertbool指定是否按显示铃铛。False
**kwargsDict其他可选关键字参数。{}
show_question

show_question(message, title=' ', parent=None, buttons=['No:secondary', 'Yes:primary'], alert=True, **kwargs) staticmethod
显示一个模式对话框,其中包含“是”、“否”按钮和 问题图标。也会敲响显示铃。您也可以 使用参数更改按钮方案。buttons

messagebox-show-question

参数:

名字类型描述违约
messagestr要在消息框中显示的消息。必填
titlestr显示为消息框标题的字符串。这 选项在 Mac OS X 上被忽略,其中平台指南 禁止在此类对话框中使用标题。' '
parentUnion[Window, Toplevel]使窗口成为消息框的逻辑父级。这 消息框显示在其父窗口的顶部。None
buttonsList[str]显示在弹出窗口底部的按钮列表 消息框。按钮可以是字符串列表,其中 将定义符号名称和按钮文本。.或者,您可以分配一个 引导样式到每个按钮,方法是使用冒号分隔 按钮文本和引导样式。如果未找到冒号,则 默认情况下,样式设置为“主要”。.['OK', 'Cancel']``['Yes:success','No:danger']['No:secondary', 'Yes:primary']
alertbool指定是否按显示铃铛。True
**kwargsDict其他可选关键字参数。{}

返回:

类型描述
Union[str, None]按下的按钮的符号名称,如果 窗口在不按按钮的情况下关闭。
show_warning

show_warning(message, title=' ', parent=None, alert=True, **kwargs) staticmethod

显示带有“确定”按钮和 警告图标。也会敲响显示铃。

messagebox-show-warning

参数:

名字类型描述违约
messagestr要在消息框中显示的消息。必填
titlestr显示为消息框标题的字符串。这 选项在 Mac OS X 上被忽略,其中平台指南 禁止在此类对话框中使用标题。' '
parentUnion[Window, Toplevel]使窗口成为消息框的逻辑父级。这 消息框显示在其父窗口的顶部。None
alertbool指定是否按显示铃铛。True
**kwargsDict其他可选关键字参数。{}
yesno

yesno(message, title=' ', alert=False, parent=None, **kwargs) staticmethod

显示带有“是”和“否”按钮的模式对话框,然后返回 按下的按钮的符号名称。

messagebox-yes-no

参数:

名字类型描述违约
messagestr要在消息框中显示的消息。必填
titlestr显示为消息框标题的字符串。这 选项在 Mac OS X 上被忽略,其中平台指南 禁止在此类对话框中使用标题。' '
alertbool指定是否按显示铃铛。False
parentUnion[Window, Toplevel]使窗口成为消息框的逻辑父级。这 消息框显示在其父窗口的顶部。None
**kwargsDict其他可选关键字参数。{}

返回:

类型描述
Union[str, None]按下的按钮的符号名称,如果 窗口在不按按钮的情况下关闭。
yesnocancel

yesnocancel(message, title=' ', alert=False, parent=None, **kwargs) staticmethod

显示带有“是”、“否”和“取消”按钮的模式对话框, 并返回所按下按钮的符号名称。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WCpPg2fH-1689312721781)(https://gitcode.net/qq_40597070/pic_go/raw/master/202212170043343.png)]

参数:

名字类型描述违约
messagestr要在消息框中显示的消息。必填
titlestr显示为消息框标题的字符串。这 选项在 Mac OS X 上被忽略,其中平台指南 禁止在此类对话框中使用标题。' '
alertbool指定是否按显示铃铛。False
parentUnion[Window, Toplevel]使窗口成为消息框的逻辑父级。这 消息框显示在其父窗口的顶部。None
**kwargsDict可选关键字参数。{}

返回:

类型描述
Union[str, None]按下的按钮的符号名称,如果 窗口在不按按钮的情况下关闭。

MessageDialog消息对话框

ttkbootstrap.dialogs.dialogs.MessageDialog (Dialog)
一个简单的模式对话框类,可用于构建简单的 消息对话框。

显示一条消息和一组按钮。中的每个按钮 消息窗口由唯一的符号名称标识。之后 弹出消息窗口,消息框等待用户 选择其中一个按钮。然后它返回 已选择按钮。使用小部件进行更高级的模态 对话框设计。Toplevel

__init__(self, message, title=' ', buttons=None, command=None, width=50, parent=None, alert=False, default=None, padding=(20, 20), icon=None, **kwargs) special
  • 1

参数:

名字类型描述违约
messagestr要在消息框中显示的消息。必填
titlestr显示为消息框标题的字符串。 此选项在 Mac OS X 上被忽略,其中平台 准则禁止在此类 对话。' '
buttonsList[str]显示在弹出窗口底部的按钮列表 消息框。按钮可以是字符串列表,其中 将定义符号名称和按钮文本。.或者,您可以分配一个 引导样式到每个按钮,方法是使用冒号分隔 按钮文本和引导样式。如果未找到冒号,则 默认情况下,样式设置为“主要”。.['OK', 'Cancel']``['OK:success','Cancel:danger']None
commandTuple[Callable, str]用户关闭对话框时要调用的函数。 实际命令是一个元组,由 要调用的函数和按钮的符号名称 关闭对话框。None
widthint邮件中每行的最大字符数。 如果文本超出限制,则线条将断开 在字面上。50
parentWidget使窗口成为消息框的逻辑父级。 消息框显示在其父窗口的顶部。None
alertbool显示对话框时按响显示屏的铃铛。False
defaultstr默认按钮的符号名称。默认 按钮在按下键时被调用。 如果未提供默认值,则 按钮列表将设置为默认值。None
padding(Union[int, Tuple[int]]边框和构件之间的间距量 内容。(20, 20)
iconstr图像路径、类似路径的对象或要成为的图像数据 显示在文本的左侧。None
**kwargsDict其他可选关键字参数。{}

例子

root = tk.Tk()

md = MessageDialog("Displays a message with buttons.")
md.show()

  • 1
  • 2
  • 3
  • 4
  • 5

方法

方法说明
create_body(self, master)重写父方法;添加消息部分。
create_buttonbox(self, master)重写父方法;添加“消息”按钮框
on_button_press(self, button)保存结果,销毁顶层,然后执行命令。
show(self, position=None)创建并显示弹出消息框。

Querybox查询框

ttkbootstrap.dialogs.dialogs.Querybox
此类包含请求数据的各种静态方法 来自最终用户。

get_color(parent=None, title='Color Chooser', initialcolor=None, **kwargs) staticmethod
  • 1

显示颜色选取器,并在 用户按确定。

querybox-get-color (1)

参数:

名字类型描述违约
parentWidget父小组件。None
titlestr标题栏上显示的可选文本。'Color Chooser'
initialcolorstr以“当前”颜色显示的初始颜色 框架。None

返回:

类型描述
Tuple[rgb, hsl, hex]所选颜色为各种颜色型号。
get_date

get_date(parent=None, title=' ', firstweekday=6, startdate=None, bootstyle='primary')

显示日历弹出窗口并返回所选内容。

querybox-get-date

参数:

名字类型描述违约
parentWidget父小部件;弹出窗口将出现在 父小组件的右下角。如果没有父级 前提是,小部件在屏幕上居中。None
titlestr弹出窗口标题栏上显示的文本。' '
firstweekdayint指定一周的第一天。 是星期一,是 星期日(默认值)。0``66
startdatedatetime显示小部件时要聚焦的日期;None
bootstylestr以下颜色可用于更改 标题和悬停/按下颜色 ->主要,次要,信息, 警告,成功,危险,光明,黑暗。'primary'

返回:

类型描述
datetime所选日期;如果未选择日期,则为当前日期。
get_float

get_float(prompt='', title=' ', initialvalue=None, minvalue=None, maxvalue=None, parent=None, **kwargs) staticmethod

请求用户输入浮点类型。

querybox-get-float

参数:

名字类型描述违约
promptstr要在条目上方的消息框中显示的消息 控件。''
titlestr显示为消息框标题的字符串。这 选项在 Mac OS X 上被忽略,其中平台指南 禁止在此类对话框中使用标题。' '
initialvaluefloat条目小组件中的初始值。None
minvaluefloat允许的最小值。None
maxvaluefloat允许的最大值。None
parentWidget使窗口成为消息框的逻辑父级。这 消息框显示在其父窗口的顶部。None
**kwargsDict其他可选关键字参数。{}

返回:

类型描述
float条目小组件的浮点值。
get_font

get_font(parent=None, **kwargs) staticmethod
请求自定义字体

querybox-get-font (1)

参数:

名字类型描述违约
parentWidget使窗口成为对话框的逻辑父级。这 对话框显示在其父窗口的顶部。None
**kwargsDict其他关键字参数。{}

返回:

类型描述
Font字体对象。
get_integer

get_integer(prompt='', title=' ', initialvalue=None, minvalue=None, maxvalue=None, parent=None, **kwargs) staticmethod
请求用户输入整数类型。

querybox-get-integer

参数:

名字类型描述违约
promptstr要在条目上方的消息框中显示的消息 控件。''
titlestr显示为消息框标题的字符串。这 选项在 Mac OS X 上被忽略,其中平台指南 禁止在此类对话框中使用标题。' '
initialvalueint条目小组件中的初始值。None
minvalueint允许的最小值。None
maxvalueint允许的最大值。None
parentWidget使窗口成为消息框的逻辑父级。这 消息框显示在其父窗口的顶部。None
**kwargsDict其他可选关键字参数。{}

返回:

类型描述
int条目小组件的整数值。
get_string

get_string(prompt='', title=' ', initialvalue=None, parent=None, **kwargs) staticmethod
请求用户输入字符串类型。

querybox-get-string

参数:

名字类型描述违约
promptstr要在条目上方的消息框中显示的消息 控件。''
titlestr显示为消息框标题的字符串。这 选项在 Mac OS X 上被忽略,其中平台指南 禁止在此类对话框中使用标题。' '
initialvalueAny条目小组件中的初始值。None
parentWidget使窗口成为消息框的逻辑父级。这 消息框显示在其父窗口的顶部。None
**kwargsDict其他可选关键字参数。{}

返回:

类型描述
str条目小组件的字符串值。

QueryDialog查询对话框

ttkbootstrap.dialogs.dialogs.QueryDialog
一个简单的模式对话框类,可用于构建简单的 数据输入对话框。显示提示、输入框和一组 按钮。可以在 用户通过重写方法事后输入。apply

使用小组件进行更高级的模式对话框设计。Toplevel

__init__(self, 
         prompt, 
         title=' ', 
         initialvalue='', 
         minvalue=None, 
         maxvalue=None, 
         width=65, 
         datatype=<class 'str'>, 
         padding=(20, 20), 
         parent=None) special
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

参数:

名字类型描述违约
promptstr要在条目上方的消息框中显示的消息 控件。必填
titlestr显示为消息框标题的字符串。 此选项在 Mac OS X 上被忽略,其中平台 准则禁止在此类 对话。' '
initialvalueAny条目小组件中的初始值。''
minvalueAny允许的最小值。仅适用于 int 和 float 数据类型。None
maxvalueAny允许的最大值。仅适用于 int 和 float 数据类型。None
widthint每行的最大字符数 消息。如果文本超出限制,则 行将在单词处中断。65
parentWidget使窗口成为消息框的逻辑父级。 消息框显示在其父级的顶部 窗。None
paddingUnion[int, Tuple[int]]边框和构件之间的间距量 内容。(20, 20)
datatypeUnion[int, str, float]用于验证条目值的数据类型。<class 'str'>
方法说明
apply(self)处理数据。
自动调用此方法以在之后处理数据 对话框将被销毁。默认情况下,它不执行任何操作。
create_body(self, master)重写父方法;添加消息和输入 部分。
create_buttonbox(self, master)重写父方法;添加“消息”按钮框
on_cancel(self, *_)关闭顶层并返回空。
on_submit(self, *_)保存结果,销毁顶层,并应用任何事后 数据操作。
validate(self)验证数据
自动调用此方法以验证之前的数据 对话框将被销毁。可以子类化和重写。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/80939
推荐阅读
相关标签
  

闽ICP备14008679号