Kel*_*ian 3 perl tk-toolkit tcl
我想使用Perl来读取模块Tcl::pTk
链接到的Tcl版本
.我发现以下哪个工作正常
use strict;
use warnings;
use Tcl::pTk;
my $int = new Tcl::pTk;
$int->Eval(<<'EOS');
# pure-tcl code to create widgets (e.g. generated by some GUI builder)
text .e
## http://wiki.tcl.tk/1626#tk_version
.e insert end "tcl_version $tcl_version\n"
.e insert end "tcl_patchLevel $tcl_patchLevel\n"
.e insert end "tk_version $tk_version\n"
.e insert end "tk_patchLevel $tk_patchLevel\n"
.e insert end "tk_library $tk_library\n"
pack .e
EOS
my $e = $int->widget('.e'); # get .e entry into play
$int->MainLoop;
Run Code Online (Sandbox Code Playgroud)
这会在GUI中显示值,但我想$tcl_version在脚本的其他部分使用.在这我失败了,$tcl_version似乎不存在.我不需要GUI部分,只需要标量的值.
应该尝试最简单的方法:
my tcl_version = $int->Eval('info tclversion');
Run Code Online (Sandbox Code Playgroud)
或者等同于Tcl方面:
my tcl_version = $int->Eval('set tcl_version');
Run Code Online (Sandbox Code Playgroud)
所有Tcl命令都会产生一个结果,因此应该反映在这里.此外,大多数情况下,您最好获得版本报告的补丁级别; 语言版本只是用于粗略的功能,而不是像系统状态报告那样详细的内容(例如,您需要错误报告的补丁号).
| 归档时间: |
|
| 查看次数: |
112 次 |
| 最近记录: |