限制滚动条长度

Lia*_*lis 6 perl tk-toolkit tkinter tcl perltk

我正在尝试使用Perl Tk创建一个简单的记事本,如GUI.我使用Scrolled小部件创建了一个带有两个滚动条的Text小部件 - 一个在右边,一个在底部.两个滚动条相遇的地方看起来像这样:

在此输入图像描述

但是,我想让它看起来像微软在"记事本"应用程序中看到的.这就是我想要的:

在此输入图像描述

正如你所看到的,现在有一个"空方块",两个滚动条相遇.记事本的另一个功能是这个"方形"可用于调整窗口大小.我希望能够实现同样的目标.

我该怎么做呢?

谢谢!

Pet*_*rin 6

诀窍是使用grid几何管理器放置小部件,几何管理器基本上创建一个(不均匀大小的)4x4网格,文本小部件位于"西北",垂直滚动条位于"东北",水平滚动条位于"南方" -West",以及"东南"的空方块.手册页上有一个相关示例.

我想我可以引用手册页示例作为合理使用(注意它是版权所有©1995-1997 Roger E. Critchlow Jr.版权所有©1996 Sun Microsystems,Inc.).

# Make the widgets
toplevel .t
text .t.txt -wrap none -xscroll {.t.h set} -yscroll {.t.v set}
scrollbar .t.v -orient vertical   -command {.t.txt yview}
scrollbar .t.h -orient horizontal -command {.t.txt xview}

# Lay them out
grid .t.txt .t.v -sticky nsew
grid .t.h        -sticky nsew

# Tell the text widget to take all the extra room
grid rowconfigure    .t .t.txt -weight 1
grid columnconfigure .t .t.txt -weight 1
Run Code Online (Sandbox Code Playgroud)

但是,你会自己翻译成Perl-Tk.有(虽然没有明确关于滚动条)网格的一些Perl的传统知识相关的讨论,这里在TkDocs可能让你开始."学习Perl/Tk"示例几何管理章节也讨论了grid.

哦! 你也希望在第四个方格中调整大小.在Tcl/T(t)k中,它被称为a ttk::sizegrip,它在此处记录.我自己从未使用它(因为还有其他方法来调整窗口大小)并且不知道它是否在Perl-Tk中.如果不是,有一个维基页面讨论如何伪造它(再次,我自己从未尝试过该代码).