免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5702 | 回复: 5
打印 上一主题 下一主题

一个关于GTK图片缩放的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-12-07 15:04 |只看该作者 |倒序浏览
在一个box中加入一张图片,如何使这张图片随着box的大小变化而进行缩放呢
我的想法是这样

void callback(GtkWidget *widget, GtkAllocation *alloc, gpointer data)
{
    width = alloc -> width;
    height = alloc -> height;
    printf("%d, %d\n", width, height);
   gtk_container_remove(GTK_CONTAINER(widget), image);
   image = create_image_with_wh(width, height);
   gtk_container_add(GTK_CONTAINER(widget), image);
}


int main()
{
    .....
    gtk_pack_start(GTK_BOX(vbox), image, TRUE, TRUE, 0);
    gtk_signal_connect(GTK_OBJECT(vbox), "size-allocate", GTK_SIGNAL_FUNC(callback), NULL);
    .....
}
但是实际上没有办法在窗口缩放的时候图片实时变化,好郁闷啊
大家如果有好办法,帮帮忙,谢谢

论坛徽章:
5
技术图书徽章
日期:2013-11-07 13:21:58技术图书徽章
日期:2013-12-07 10:34:46技术图书徽章
日期:2014-04-23 08:50:31双鱼座
日期:2014-09-16 09:12:34亥猪
日期:2015-01-23 13:37:49
2 [报告]
发表于 2010-12-07 21:06 |只看该作者
是没起最用还是没实时的起作用?
另外哪个版本的gtk?

论坛徽章:
0
3 [报告]
发表于 2010-12-09 09:28 |只看该作者
回复 2# nketc


    是起了作用,但没有实时显示

论坛徽章:
1
巨蟹座
日期:2013-12-03 13:34:29
4 [报告]
发表于 2010-12-09 15:33 |只看该作者
使用GtkWidget 的configure-event 信号试试

论坛徽章:
5
技术图书徽章
日期:2013-11-07 13:21:58技术图书徽章
日期:2013-12-07 10:34:46技术图书徽章
日期:2014-04-23 08:50:31双鱼座
日期:2014-09-16 09:12:34亥猪
日期:2015-01-23 13:37:49
5 [报告]
发表于 2010-12-09 22:55 |只看该作者
gtk的特点决定的,一般绘制相关的动作都是最快在下一次main loop调度的时候起作用。
如果想实时的画试试 gdk_window_process_updates吧。

论坛徽章:
5
技术图书徽章
日期:2013-11-07 13:21:58技术图书徽章
日期:2013-12-07 10:34:46技术图书徽章
日期:2014-04-23 08:50:31双鱼座
日期:2014-09-16 09:12:34亥猪
日期:2015-01-23 13:37:49
6 [报告]
发表于 2010-12-09 22:56 |只看该作者
gtk的特点决定的,一般绘制相关的动作都是最快在下一次main loop调度的时候起作用。
如果想实时的画试试 gdk_window_process_updates吧。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP