我在Windows 7 64位和Fedora 21 64位中使用GTK + 2.24。我使用开罗画了一个白色的绘图区域。它适用于Fedora,但不适用于Windows。有谁知道原因?
这是我的代码:
static gboolean draw_background_cb(GtkWidget *widget _U_, cairo_t *cr, gpointer data _U_)
{
/* Set background color */
cairo_set_source_rgb(cr, 1, 1, 1);
cairo_rectangle(cr, 0, 0, 300, 300);
cairo_paint(cr);
return FALSE;
}
int main(int argc, char *argv[])
{
GtkWidget *window;
gtk_init(&argc, &argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
g_signal_connect(window, "draw", G_CALLBACK (draw_background), NULL);
gtk_widget_show(window);
gtk_main();
return 0;
}
答案 0 :(得分:0)
GTK + 2使用expose-event
代替draw
进行绘制。我不知道其他的差异是什么;遗憾。