如何设置tk_messageBox的大小?

问题描述 投票:2回答:3

我正在将tk_messageBox与警报消息一起使用,所以我想配置该消息对话框的布局。

我正在这样使用tk_messageBox

set status [tk_messageBox -type yesno -icon warning -message "Here goes a text with 50 words"]

如何在此处设置tk_messageBox的宽度和高度?

也许tk_messageBox有更好的选择?

tcl tk tkmessagebox messagedialog
3个回答
3
投票

您无法设置tk_messageBox的大小(该功能与这些对话框在Windows和OSX上的工作方式不匹配)。您可以尝试将一些消息放入-detail选项,该选项通常使用较小的字体。

或者您可以尝试在Tk安装的文件msgbox.tcl中查找在Unix / X11上实现消息框对话框的Tcl代码。提示:在该平台[[only上,tk_messageBox实际上是::tk::MessageBox的别名。该脚本创建的窗口小部件的名称取决于-parent选项,但如果不存在,则为.__tk__messagebox。知道了这一点,您应该能够使用聪明的事件处理功能来配置相关的toplevel小部件。但这不是一个很好的解决方案,并且不能在Windows或OSX上运行(当为Aqua而不是X11生成时)。


2
投票
这是您的初衷吗?

import Tkinter import tkMessageBox window = Tkinter.Tk() window.option_add('*Dialog.msg.width', 50) tkMessageBox.showinfo("header", "Hello, World!")


0
投票
[.option_add可能仅适用于linux操作系统,但是您可以控制字体,行换行和框的宽度:

root.option_add('*Dialog.msg.font', 'Helvetica 24') root.master.option_add('*Dialog.msg.width', 34) root.master.option_add("*Dialog.msg.wrapLength", "6i")

((“ 6i”是行的长度,以英寸为单位)    
© www.soinside.com 2019 - 2024. All rights reserved.