【问题标题】:Adding 2 different widgets on single window GTK+在单个窗口 GTK+ 上添加 2 个不同的小部件
【发布时间】:2015-06-10 22:04:09
【问题描述】:

我想在同一个窗口中添加 2 个小部件,一个是 gtk_drawing_area_new (); 类型,用于使用 Cairo,另一个是 fixed,用于添加一些按钮。

无论如何我可以在同一个窗口上执行此操作吗?我是 GTK+ 的新手。

【问题讨论】:

  • 我知道我做错了唯一的事情就是使用 Cairo 并使用简单的 GTK 函数,如 button 和 layout 以及 cairo

标签: c++ gtk


【解决方案1】:

使用 GtkContainer 子类,例如 GtkHBox、GtkVBox 或 GtkGrid

GtkWidget *hbox = gtk_hbox_new (FALSE, 0);
GtkWidget *drawingArea = gtk_drawing_area_new ();
GtkWidget *button = gtk_button_new_with_label ("Button");

gtk_container_add (GTK_CONTAINER (window), hbox);

gtk_box_pack_start (GTK_BOX (hbox), drawingArea, TRUE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (hbox), button, TRUE, TRUE, 0);

gtk_widget_show_all (window);

您可以在此处查看所有可用的标准容器:https://developer.gnome.org/gtk3/stable/GtkContainer.html#GtkContainer.object-hierarchy

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多