tk相关内容

TK/TCL,无法理解这个井字游戏代码片段

谁能帮我解释一下下面的代码片段是做什么的.此代码片段取自 http://wiki.tcl.tk/12374.它旨在创建一个井字游戏.用于理解 Tk/Tcl 的资源并不多,所以这给我带来了很大的困难. proc DrawBoard {{redraw 0}} {全球 S B 游戏 Cif {$redraw} { ;# 必须重绘一切.c 删除所有set w2 [expr {$B(w2) - 15}] ..
发布时间:2021-09-04 19:49:38 其他开发

Tcl/Tk:当用户改变窗口大小时如何缩放小部件

我有一个窗口,里面有小部件.当我手动重新调整窗口大小时,小部件会在高度减小时自行缩放,但在宽度更改或高度扩大到初始高度之外时不会.如何使小部件堆叠到窗口的边框? 创建窗口的代码: wm title $base "KitKite Sparam Viewer"设置 frm_main [框架 $base.main_frm]打包 $frm_maingrid [frame $frm_main.gra ..
发布时间:2021-09-04 19:49:35 其他开发

用tcl处理多维列表很困难

我需要用 tcl 处理一些复杂的数据.我需要 3 维列表来存储数据,但我发现 tcl 对这项工作不利. 根据我目前的研究,tcl 不支持列表的简单索引,如:listname(index). 所以对于多维列表,如果我想为某个元素分配一个新的值,会很麻烦. 是否有一些技巧可以有效地处理数据? 解决方案 多维数组最有效的表示是嵌套列表(除非您要使用稀疏数组).为了解决这个问题, ..
发布时间:2021-09-04 19:48:25 其他开发

何时以及如何使用 Tk 设置窗口大小

我正在编写一个脚本来将内容输出到一个窗口,该窗口包含一个 Tkhtml 小部件和一个在 ttk::panedwindow 中显示在彼此上方的文本小部件.两个小部件都可以垂直和水平滚动.还有一个按钮允许用户清除文本小部件. 我正在运行 Ubuntu 的笔记本电脑上进行一些开发.窗口管理器允许以 2x2 阵列的形式提供四个桌面工作区,当第一次显示 GUI 时,底部的五分之一左右从我正在使用的工作 ..
发布时间:2021-09-04 19:48:19 其他开发

Tk 文本小部件索引表达式和 Unicode

(这个问题基于那个) 让我们考虑以下代码: 包需要 Tk 8.6包 [文本 .t].t 插入结尾“abcdefgh\nабвгґдеє\n一伊依医咿噫欹泆"puts "[.t 索引 1.4+1l] [.t 索引 1.4+2l]"puts "[.t 索引 3.4-1l] [.t 索引 3.4-2l]"退出 0 输出: 2.2 3.22.6 1.8 如果行足够长,我宁愿希望 +1l 和 ..
发布时间:2021-09-04 19:48:13 其他开发

TCL\TK 调整窗口大小:绑定

我在调整窗口大小时遇到​​问题,我不明白为什么,当我移动窗口 . 我用 .c bind cir 创建的另一个窗口[列表窗口 %x %y] 不要跟随我的窗口 .我相信我必须使用 作为选项,但我不知道该怎么做 感谢您的帮助 我的代码如下: proc 窗口 {crx 哭} {设置 w1 .win抓住 {摧毁 $w1}顶层 $w1wm 最小尺寸 $w1 300 100wm maxsize $ ..
发布时间:2021-09-04 19:47:37 其他开发

Tcl/Tk:最大化窗口/确定窗口是否最大化?

我可以知道我的顶级窗口是否已最大化,我是否可以以编程方式将其最大化?我在 Windows XP 上使用 R 的 tcltk 包 8.5. 问题的原因是:我想通过先调用撤销然后去图标化来强制执行 事件.但是,如果窗口在这两个函数调用之前最大化,则不是在这些调用之后.有没有更简单的方法来强制执行事件? 解决方案 您可以通过 wm state $toplevel 来发现窗口是否最大化(查找 ..
发布时间:2021-09-04 19:47:08 其他开发

在 Wayland 显示器 (CentOS) 上使用 tk_messageBox 时出现错误“坏垫值“2m":必须为正屏幕距离

我的 Tcl 脚本在 Ubuntu 上运行良好,但现在我已将其中一个复制到 CentOS Linux 8 并收到上述错误. 即使我刚开始 Wish 并输入 tk_messageBox 命令,也会出现错误. 安装的版本是 tk.x86_64 1:8.6.8-1.el8 有什么办法可以解决这个错误吗? 解决方案 在 Wayland 上,您必须手动设置 tk 缩放.我有这样的代 ..
发布时间:2021-09-04 19:46:36 其他开发

如何为多个列表框(TCL)实现 tk 滚动条?

我尝试了各种选项,但没有成功为两个或多个列表框实现简单的滚动条.以下是我的代码在滚动时出错.我希望你们能帮助我... scrollbar .scroll -orient vpack .scroll -side left -fill y列表框 .lis1pack .lis1 -side left列表框 .lis2pack .lis2 -side left对于 {set x 0} {$x 谢谢. ..
发布时间:2021-09-04 19:46:28 其他开发

Tcl/Tk:调整大小时帧行为异常.

我对 Tcl/Tk 比较陌生,但在过去的几周里一直在相当成功地使用它,不停地工作.在大多数情况下,它看起来相当简单.但是,我最近遇到了一个障碍,这可能很简单,但我似乎无法弄清楚. 我已将相当复杂的代码简化为几行来演示问题. 我的简单示例生成两个标签框,每个标签框带有一个简单的标签小部件.当我调整(即扩展)主窗口的大小时,我希望“左"框架仅在 y 方向上调整大小,而我希望“中间"框架在 ..
发布时间:2021-09-04 19:46:19 其他开发

如何从测试本身获取 TCL 测试的名称

我想知道如何从测试本身找到您在 tcl 中运行的测试的名称?我在谷歌上找不到这个. 我正在调用另一个过程并将调用它的测试的名称作为参数传递.所以我想知道哪个 tcl 命令可以为我做到这一点. 解决方案 这不是一个鼓励的用例……但是如果你直接在里面使用它,你可以使用 info frame 1 来获取信息测试. proc 示例 {contextTest} {puts "从 $conte ..
发布时间:2021-09-04 19:46:10 其他开发

Tk 框架内的 Chrome 网页

我想在 Tcl Tk 框架内运行我的 chrome 页面.而且我必须从 Windows 平台运行我的脚本......到目前为止,我可以使用 start 命令启动 chrome 页面.如何将我的 chrome 页面包含在 Tk 窗口中? eval exec [auto_execok start] http://www.gmail.com 谢谢 解决方案 我不认为你能做到这一点.您可以使用 ..
发布时间:2021-09-04 19:45:47 其他开发

如何捕捉 Tk 中的最大化信号?

您可以通过以下方式将命令与窗口的 X 按钮绑定: wm 协议 $windowPath WM_DELETE_WINDOW $command 如何对窗口的最大化按钮执行相同操作? 解决方案 它没有标准协议,无论是在 X11 ICCCM 集 或 FreeDesktop 套装.因此,wm 协议 不可能用于它.但是,您可以使用 事件来跟踪窗口的所有大小更改.请注意,如果您将其设置在顶层,您还将收 ..
发布时间:2021-09-04 19:45:19 其他开发

在 Tkinter 中处理触摸屏手势

我将如何在 Tkinter 中安装触摸屏手势处理程序? 我需要做一些特别简单的事情:在检测到“展开"手势时增加字体大小. 如果 Tcl/Tk 没有专门实现它,这甚至可以在 Tkinter 中实现吗?我想要么窗口管理器向客户端窗口发送一些我可以侦听和处理的事件,要么客户端必须向窗口管理器注册特定类型事件的处理程序,但如果无法注册这些处理程序来自 Tkinter,如果 Tcl 不为它们提供 ..
发布时间:2021-09-04 19:45:16 Python

是否可以更改笔记本标签的宽度?

正如标题所说,我想知道是否可以更改笔记本小部件选项卡的宽度? 我想要做的是确保选项卡的大小相等并填充窗口的整个宽度,即使有人调整它的大小也是如此.目前,它看起来像这样: 但是想要这样: [我通过在标签名称前后添加空格来做到这一点] 第一个的相关代码是: ttk::frame $fr.note.tab1$fr.note add $fr.note.tab1 -text "Ta ..
发布时间:2021-09-04 19:45:08 其他开发

带有 tcltk/tcltk2 的 R:使用 TkTable 显示大 data.frame 时提高缓慢的性能?

请看下面的两个编辑(稍后添加)... 我已将一个大的 data.frame 加载到内存中(2.7 mio 行和 7 列 - 74 MB 的 RAM). 如果我想使用 Tcl/Tk 的 Tktable widget 查看数据通过tcltk2包函数tk2edit 需要超过 15 分钟,直到窗口显示数据 并且大约 7 GB 的 RAM (!) 被 R(包括 Tcl/Tk)和加上! ..
发布时间:2021-09-04 19:44:33 其他开发

在输入框中显示文件名的尾部

我经常发现自己使用 ttk::entry 小部件编写 Tk 对话框以提示输入文件名.我将用户的最后输入保存到这样的对话框中,并在下次显示时将其显示为默认值. 在我填充小部件后,如果完整的文件名比输入框长,那么它将显示最左边的几个字符,这些字符通常是文件名中不太有趣的部分,我宁愿它显示最右边的字符. 我发现立即尝试使用 $entryWidget xview 效果不佳 - 它什么也没做,我 ..
发布时间:2021-09-04 19:44:30 其他开发

按下按钮时如何查看菜单?

跟进这个问题,我试图查看(与用鼠标左键单击时相同)menu,sub1,当一个按钮Test被按下时,但我不能.在以下代码中,按钮似乎反而冻结了 GUI: 导入 tkinter 作为 tk根 = tk.Tk()菜单栏 = tk.Menu(root)sub1 = tk.Menu(菜单栏,撕下=0)sub1.add_command(label="Item 1", command=lambda : pri ..
发布时间:2021-09-04 19:44:11 Python

为什么小部件的创建顺序很重要?

以下代码工作正常.它显示一个 panedwindow,顶部有一个蓝色框,下面有一个绿色框: panedwindow .root -orient vertical -showhandle true -background redframe .top -background blue -width 100 -height 100frame .bot -background green -width ..
发布时间:2021-09-04 19:43:49 其他开发