带有Zenity的Shell脚本

时间:2009-04-20 19:36:11

标签: linux shell zenity

使用Zenity可以添加按钮,更改字体,除默认选项之外的任何内容? 如果没有,还有另一个sh对话框允许更多自定义?

4 个答案:

答案 0 :(得分:3)

Zenity支持一些类似HTML的标记用于文本标记:<b><i><u><s><tt><big><small>more - 嗯,实际上它是支持这些标签的Gtk +,但Zenity可以在这些功能之上捎带。

为了更好地控制对话框,您可以使用Kommander。它就像一个与各种脚本语言兼容的表单构建器:Python,Perl,Ruby,shell。那里有各种examples

答案 1 :(得分:0)

您可以使用~/.gtkrc文件更改样式,但这可能很痛苦。您可能希望继续使用Gtk2-Perl编写真正的GUI程序:

#!/usr/bin/perl

use strict;
use warnings;
use Gtk2;

Gtk2->init;

my $window = Gtk2::Window->new;
my $vbox   = Gtk2::VBox->new;
my $label  = Gtk2::Label->new("Hello World");
my $button = Gtk2::Button->new("Press me");

$window->add($vbox);
$vbox->add($label);
$vbox->add($button);

$window->set_default_size(200, 200);
$window->signal_connect(
    destroy => sub {
        Gtk2->main_quit;
    }
);

my $i = 0;
$button->signal_connect(
    clicked => sub {
        $label->set_text("button pressed " . ++$i . " times");
    }
);

$window->show_all;

Gtk2->main;

答案 2 :(得分:0)

请确保为您正在使用的Python版本安装了正确的“PyZenity”。

这是下载pyzenity-0.1.4:Download pyzenity-0.1.4

的链接

这适用于Python 2.6

另外,我在其他一台机器上安装了Python 2.7,但那里也出现了相同的错误。

因此,要解决此问题(对于更高版本的Python),请使用Active Python,然后使用“pym”安装Pyzenity。

答案 3 :(得分:0)

你可以使用gtkdialog和glade:

gtkdialog --glade-xml=file.glade --program=MAIN_WINDOW