gpt4 book ai didi

Perl Tcl::pTk 读取 Tcl 版本

转载 作者:行者123 更新时间:2023-12-01 10:21:51 25 4
gpt4 key购买 nike

我想用Perl读入模块的Tcl版本 Tcl::pTk被链接到。我发现以下工作正常

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;

这会在 GUI 中显示值,但我想在脚本的其他部分使用 $tcl_version。在这方面我失败了,因为 $tcl_version 似乎不存在。我不需要 GUI 部分,只需要标量的值。

最佳答案

应该尝试可能可行的最简单的方法:

my tcl_version = $int->Eval('info tclversion');

在 Tcl 端备选且等价地:

my tcl_version = $int->Eval('set tcl_version');

所有 Tcl 命令都会产生一个结果,因此应该在此处反射(reflect)出来。此外,大多数情况下,最好获取版本报告的补丁级别;语言版本实际上只是针对粗略的功能,而不是像系统状态报告这样的详细信息(例如,您需要补丁号来报告错误)。

关于Perl Tcl::pTk 读取 Tcl 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50530136/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com