在Gtk中,如何使用股票图标制作按钮?

时间:2009-11-14 17:20:59

标签: c# gtk gtk#

我想创建一个按钮,上面有“删除”图标,但没有“删除”文字。如果我使用Button button = new Button(Stock.Remove);,我会得到相反的结果:只是文本,没有图标。我将有许多这些按钮,文本使它看起来混乱。我如何获得图标?

注意:这些是常规按钮,而不是工具栏按钮。

编辑: 这就是它目前的样子:

cluttered

我想用小而不引人注意的仅限图标的按钮替换这些按钮。

2 个答案:

答案 0 :(得分:6)

首先创建一个股票Gtk.Image,然后创建您的Gtk.Button,将图片作为参数传递。

Image image = new Image(Stock.Remove, IconSize.Button);
Button button = new Button(image);

答案 1 :(得分:1)

请参阅GTK+ stock images列表。然后在您的调用中使用其中一个标识符来创建按钮,完全不需要自己手动创建图像:

Button remove = Button.NewFromStock(Stock.Remove);

我认为这比必须“知道”和处理正确的图像大小提示更清晰。

更新:在撰写本文时,Mono链接实际上并不起作用。以下是核心GTK + C文档中的list of stock itemsgtk_button_new_from_stock()函数说明。在Mono中完成的GTK#包装似乎非常接近原始版本。