原因在于,通常WINDOWS使用GB2312作为LOCAL编码,
而GTK中使用了UTF-8编码. 所以导致中文显示有问题.
经探索, 找到一个办法,使用GLIB提供的函数对字符的编码进行转换:
g_locale_to_utf8()
g_convert()
使用如下定义的函数后,
只要有中文显示的地方, 都可以使用 _U("中文字符常量 或 变量") 进行转换.
点击(此处)折叠或打开
- gchar *_U(gchar *str)
- {
- return(g_locale_to_utf8(str, -1, 0, 0, 0));
- }
点击(此处)折叠或打开
- gchar *_U(gchar *str)
- {
- return (g_convert(str, -1, "GB2312", "UTF-8", NULL, NULL, NULL));
- }