首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >删除GtkButton的图像填充(内边框)?

删除GtkButton的图像填充(内边框)?
EN

Stack Overflow用户
提问于 2010-05-19 14:11:47
回答 1查看 1.7K关注 0票数 0

在C/GTK中,是否有一种方法可以删除具有使用GtkButton的图像的gtk_button_set_image的内部边框?

gtk_button_set_relief (GTK_BUTTON (button), GTK_RELIEF_NONE);做了一些工作,但一只鼠标显示,它只是隐藏它。

我更愿意这样做,而不使用RC风格,但如果没有其他方式,如何使用RC样式的一个例子将不胜感激。

基本上,当鼠标悬停在GtkButton上时,我需要一种没有“发光”效果的方法。

注意:这也是gtk+ 2.0的最新稳定版本

EN

回答 1

Stack Overflow用户

发布于 2011-12-28 14:12:07

您可以使用GtkStyle禁用“辉光”按钮。

例子:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include <gtk/gtk.h>

static void destroy (GtkWidget *widget, gpointer data){
    gtk_main_quit();
}

int main( int argc, char *argv[]){

    GtkWidget *window;
    GtkWidget *button;
    GtkStyle *style;

    gtk_init(&argc, &argv);

    /* window */
    window = gtk_window_new(GTK_WINDOW_TOPLEVEL); 
    gtk_window_set_title(GTK_WINDOW (window), "my Program");
    gtk_widget_set_usize(window,200,150);
    gtk_window_set_position(GTK_WINDOW (window),GTK_WIN_POS_CENTER);
    gtk_signal_connect (GTK_OBJECT (window), "destroy", GTK_SIGNAL_FUNC(destroy),NULL);

    /* Create a new button (NO GLOW) */
    button = gtk_button_new_with_label ("Exit");
    /*-------------------------------------------------------------*/
    style = gtk_widget_get_style(button);
    style->bg[GTK_STATE_PRELIGHT] = style->bg[GTK_STATE_NORMAL];
    gtk_widget_set_style(button, style);
    /*-------------------------------------------------------------*/
    gtk_container_add (GTK_CONTAINER (window), button);
    gtk_signal_connect (GTK_OBJECT (button), "clicked", GTK_SIGNAL_FUNC (destroy), NULL);


    gtk_widget_show(button);
    gtk_widget_show(window);
    gtk_main();

    return 0;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2869823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文