刚开始用gtk编程,发现里面显示不了中文,很难搞,网上找了很久才找到解决方法, 发布出来给大家试试:
Linux默认是UTF-8格式,但中文是GB2312,所以我们要把UTF-8转为GB2312才可以显示。
转换方法如下: g_convert("要显示的中文",-1,"UTF-8","GB2312",NULL,NULL,NULL); 例如新建一个label:gtk_label_new(g_convert("中文",-1,"UTF-8","GB2312",NULL,NULL,NULL)); 好像还需要一个头文件来调用g_convert的方法,可能是这个头文件吧:#include<unistd.h>。
时间有点久,头文件不是很记得了,大家自己试一试吧! |