我可以在没有GtkDrawingArea的情况下直接在GtkWindow中绘制一个矩形吗?

时间:2013-07-22 15:05:24

标签: gtk

1,我查了很多关于在Gtk中在GtkWindow中绘制矩形的参考文献,但很多都使用了GtkDrawingArea。我想知道我可以在没有GtkDrawingArea的情况下直接在GtkWindow中绘制一个矩形吗?如果我能做到这一点,我该怎么办?有没有例子或参考?

2,实际上,我需要在gtkwindow中绘制一个矩形,然后在矩形中添加两个按钮,并在矩形的小字段中指定设置为固定颜色值的点的坐标。    我试过用GtkDrawingArea绘制矩形的方法,但是GtkDrawingArea不是GTK_CONTAINER,所以我不能在GtkDrawingArea中添加任何内容;我也尝试使用一些布局管理器,如gtk_vbox,但似乎失败了。我不能在矩形区域放置一个按钮。

现在我很困惑如何做下一步。如果有人能给我一些指导或参考,非常感谢你!

1 个答案:

答案 0 :(得分:1)

是的,你可以。您可能需要在GtkWindow上设置“app-paintable”标记,但您可以连接到其draw信号,并在Cairo的背景上绘制。然后从FALSE信号处理程序返回draw,表示仍应为绘图调用其他处理程序;然后按钮仍然可以在顶部绘制。不过,我不知道有任何直接在窗口上绘制的在线示例。