我只想弄清楚如何插入变量的内容,.txt insert end $var并将我插入的内容自动显示在最后一行,而无需手动向下滚动文本.
一个简单的TCL示例:
proc push_button { } {
global k
set name [.ent get]
.txt insert end "$k New Line...$name\n"
}
global k
set k 1
frame .frm -relief groove
label .lab -text "Enter name:"
entry .ent
button .but -text "Insert Line" -command "push_button; incr k"
text .txt -width 20 -height 10
pack .lab -in .frm
pack .ent -in .frm
pack .frm
pack .but
pack .txt
Run Code Online (Sandbox Code Playgroud)
尝试.txt see end使索引end可见.为了避免在底部出现空白行,您可能需要使用.txt see end-2c哪一个在最后一个\n可见之前使角色成为可能.end-2l也会工作(c=字符,l=行,你需要2因为小部件在你插入的最后一个字符后添加一个额外的换行符).每次向窗口小部件添加文本时都会执行此操作.
例如:
proc push_button { } {
global k
set name [.ent get]
.txt insert end "$k New Line...$name\n"
.txt see end-2c
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
266 次 |
| 最近记录: |