我一直在使用 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');