【发布时间】:2015-01-12 17:47:24
【问题描述】:
我一直在使用 Perl Tkx 开发 GUI,发现有两个单独的函数可以用来创建按钮。 (button 和 ttk__button)。
到目前为止,我发现的唯一区别是 button 函数似乎使文本居中对齐,而 ttk__button 函数似乎使文本左对齐。
使用button的示例:
#!/usr/bin/perl
use strict;
use warnings;
use Tkx;
my $text = "Hello\nworld!\n\nThis is some text...";
my $mw = Tkx::widget->new(".");
my $b = $mw->new_button(
-text => $text,
-command => sub { exit; },
);
$b->g_grid;
Tkx::MainLoop()
此脚本将使文本居中:
使用ttk__button的示例:
#!/usr/bin/perl
use strict;
use warnings;
use Tkx;
my $text = "Hello\nworld!\n\nThis is some text...";
my $mw = Tkx::widget->new(".");
my $b = $mw->new_ttk__button(
-text => $text,
-command => sub { exit; },
);
$b->g_grid;
Tkx::MainLoop()
此脚本将左对齐文本:
我想知道这两个函数之间还有哪些其他区别,以及是否有任何特殊原因有两个单独的函数可以创建按钮。其中一个通常比另一个更好用吗?
还有什么方法可以使用ttk__button 函数使文本居中对齐?
编辑:
我为此添加了“Tcl”标签,因为 Perl Tkx 本质上是由 Tcl 构建的。我对 Perl 很熟悉,但在 Tcl 方面我还是个新手。
虽然乍一看可能不像,但实际上这更像是一个 Tcl 问题而不是 Perl 问题,所以我很想听听有 Tcl 经验的人的回答。
注意:
要在ttk__button 中居中文本,请将以下行添加到您的代码中:
Tkx::ttk__style_configure('TButton', -justify => 'center');
【问题讨论】:
标签: perl user-interface button tcl tkx