GtkEntry
использует дополнительный GdkWindow
для текстовой области. Это своего рода приват, но вы можете получить к нему доступ, используя следующий код:
GDK_WINDOW (gdk_window_peek_children (GTK_WIDGET (entry)->window)->data);
Итак, вы можете передать это окно gdk_cairo_create()
.
Если у вас есть проблемы с применением этого к вашему коду, вставьте код - трудно догадаться, что делать, не имея никакого способа тестирования.