怎样设置GtkEventBox的边框的颜色阿
我在Eventbox中有个GtkImage,我设置了BOX的边框宽度,正个程序背景是黑色的,我想把图像的边框背景为白色,我该如何去设置
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
我在Eventbox中有个GtkImage,我设置了BOX的边框宽度,正个程序背景是黑色的,我想把图像的边框背景为白色,我该如何去设置
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(4)
奇怪,道理上应该可以,是不是你的主题的问题。
你可以试试,new了event_box后,gtk_widget_set_app_paintable(event_box, TRUE);
然后g_signal_connect(event_box, "expose-event", on_expose, NULL);
在on_expose里自己用cairo改颜色。
没用了,我做过的
对那个event_box gtk_widget_modify_bg?
在EXPOSE事件中直接用cairo来绘制
//FIXME:给控件的旁边画上一条线
void draw_border_with_gc(GtkWidget *widget,const char *color)
{
GdkGC *gc;
GdkColor gcolor;
GdkRectangle rect;
GtkAllocation *alloc;
gc = gdk_gc_new(widget->window);
gdk_color_parse(color,&gcolor);
gdk_gc_set_rgb_fg_color(gc,&gcolor);
alloc = &widget->allocation;
gdk_draw_rectangle(widget->window,gc,FALSE,
alloc->x,alloc->y,alloc->width,alloc->height);
g_object_unref(gc);
}
[ 本帖最后由 chenzhixin 于 2008-9-9 09:08 编辑 ]