Gtk断言失败c gtk_calendar

时间:2013-12-07 05:41:53

标签: c gtk assert glib

我的断言失败了我的gtk + / C代码,所以,我不知道为什么:

错误是:g_date_set_month:断言'g_date_valid_month(m)'失败

怀疑的行是:

t_day day; 
uint y, m, da;

gtk_calendar_get_date(GTK_CALENDAR(d->calendar), &y, &m, &da);

g_date_set_day(&day.date, da);
g_date_set_year(&day.date, y);
g_date_set_month(&day.date, m);

这是我使用g_date_set_month()的唯一函数。

感谢您阅读

1 个答案:

答案 0 :(得分:1)

GtkCalendar返回0-11之间的月份值:

  

month:存储月份编号的位置(0到11之间),或   空值。 [OUT] [允许-无]

GDate使用1-12之间的月份值(请参阅internal representation和设置者中使用的enum type):

  guint月:4;日的一天 - 一年的代表日   date,1到12之间的数字

您可能需要在两种格式之间进行转换。