GTK入门学习:布局容器之垂直布局

垂直布局和水平布局的用法基本是一样,无非是新建垂直布局容器接口,还有控件摆放的方向不同。

垂直布局容器的创建:

GtkWidget *gtk_vbox_new( gboolean homogeneous,

gint spacing );

完整代码如下:

#include <gtk/gtk.h>

int main(int argc, char *argv[])
{
        //1.gtk初始化
        gtk_init(&argc, &argv);

        //2.创建一个窗口
        GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL);

        //3.1 创建一个垂直容器
        GtkWidget *vbox = gtk_vbox_new(TRUE, 10);
        //3.2 将vbox添加到窗口中
        gtk_container_add(GTK_CONTAINER(window), vbox);

        //4.1.1创建按钮button1
        GtkWidget *button1 = gtk_button_new_with_label("button1");
        //4.1.2将button1加入到hbox中
        gtk_container_add(GTK_CONTAINER(vbox), button1);

        //4.2.1创建按钮button2
        GtkWidget *button2 = gtk_button_new_with_label("button2");
        //4.2.2将button2加入到hbox
        gtk_container_add(GTK_CONTAINER(vbox), button2);

        //4.3.1创建按钮button2
        GtkWidget *button3 = gtk_button_new_with_label("button3");
        //4.3.2将button2加入到hbox
        gtk_container_add(GTK_CONTAINER(vbox), button3);

        //5.显示所有文件
        gtk_widget_show_all(window);

        //6.主事件循环
        gtk_main();

        return 0;
}

运行结果:

源码下载:http://download.csdn.net/download/lianghe_work/8931881

转自:

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-08 20:09:39

GTK入门学习:布局容器之垂直布局的相关文章

GTK入门学习:布局容器之表格布局

学习水平和垂直布局容器后,我们几乎能布出任何风格的布局,只需要嵌套使用水平布局容器和垂直布局容器即可.假如我们要完成下图的布局,我们该怎么做呢? 1)创建一个垂直布局容器( A ) 2)创建一个水平布局容器( B ),一个close按钮( C ) 3)将水平布局容器和close按钮添加到垂直布局容器里( 将 B 和 C 添加到 A ) 4)创建button 1按钮( D ) 和 button 2按钮( E ) 5)再将button 1按钮 和 button 2按钮添加到水平布局容器里( 将 D

布局容器之表格布局

学习水平和垂直布局容器后,我们几乎能布出任何风格的布局,只需要嵌套使用水平布局容器和垂直布局容器即可.假如我们要完成下图的布局,我们该怎么做呢? 1)创建一个垂直布局容器( A ) 2)创建一个水平布局容器( B ),一个close按钮( C ) 3)将水平布局容器和close按钮添加到垂直布局容器里( 将 B 和 C 添加到 A ) 4)创建button 1按钮( D ) 和 button 2按钮( E ) 5)再将button 1按钮 和 button 2按钮添加到水平布局容器里( 将 D

GTK入门学习:布局容器之固定布局

前面我们学习的水平.垂直和表格布局容器,控件会跟着容器大小的变化进行自动适应,而固定布局容器里的控件则不会跟着变化( 则固定不变 ). 固定布局的创建: GtkWidget *gtk_fixed_new(void); 返回值:固定布局容器指针 固定布局容器添加控件: void gtk_fixed_put( GtkFixed *fixed, GtkWidget *widget, gint x, gint y ); fixed:容纳控件的容器 widget:要添加的控件 x, y:控件摆放位置的起点

GTK入门学习:布局容器之水平布局

如果我们希望窗口里多放添加几个控件,直接添加是不成功的,因为窗口只能容纳一个控件的容器.这时候,我们需要借助布局容器,我们先把布局容器添加到窗口里,然后再把所需要添加的控件放在布局容器里. 布局容器的主要分类:水平布局( GtkHBox).垂直布局(GtkVBox ).表格布局(GtkTable).固定布局(GtkFixed ). 水平布局容器: 水平布局容器的创建: GtkWidget *gtk_hbox_new( gboolean homogeneous, gint spacing ); h

布局容器之固定布局

前面我们学习的水平.垂直和表格布局容器,控件会跟着容器大小的变化进行自动适应,而固定布局容器里的控件则不会跟着变化( 则固定不变 ). 固定布局的创建: GtkWidget *gtk_fixed_new(void); 返回值:固定布局容器指针 固定布局容器添加控件: void gtk_fixed_put( GtkFixed *fixed, GtkWidget *widget, gint x, gint y ); fixed:容纳控件的容器 widget:要添加的控件 x, y:控件摆放位置的起点

GTK入门学习:布局练习之计算器

接下来,我们做一个布局练习,如下图: 我们用表格布局实现,表格布局参考坐标如下: 这里我们用到行编辑控件( GtkEntry ). 行编辑的创建: GtkWidget * gtk_entry_new(void); 返回值:行编辑指针行 编辑内容的设置: void gtk_entry_set_text (GtkEntry *entry,const gchar *text); entry: 行编辑 text: 需要设置的内容 设置行编辑是否允许编辑: void gtk_editable_set_ed

GTK入门学习:glade的使用

搭建好环境后,在终端敲 glade 即可启动glade工具. glade的整体框图: 常用控件选择区:列举了常用的控件,常用的有三类:顶层(主窗口等),容器(各种布局容器等),控制和显示(按钮.便签.图片控件等) 当鼠标放在控件时,会自动显示控件的中文文字,同时,还能人为设置,如下图: 界面编辑区:把控件拖放在这进行进行相应的布局 控件监视区:能够看到界面上所有的控件,同时,选中这个控件,可以看到这个控件的具体类型 属性编辑区:编辑选中控件的常用属性,如窗口设置标题.窗口类型.屏幕上显示位置等.

GTK入门学习:信号与回调函数

前面我们学习的GTK界面都是静态的,我们按下按钮它是没有响应的,如何让它有响应呢?接下来我们一起学习GTK的信号与回调函数. GTK采用了信号与回调函数来处理窗口外部传来的事件.消息或信号.当信号发生时,程序自动调用为信号连接的回调函数. 学习应用编程,我们会经常接触到"信号"这个名词.GTK中的"信号"实际上是一种软件中断."中断"在我们生活中经常遇到,譬如,我正在房间里打游戏,突然送快递的来了,把正在玩游戏的我给"中断"了

Docker入门学习2 ——容器基本操作

摘要:介绍Docker容器相关的操作命令. 知识点: run ps start attach exec top stop kill inspect rm logs images rmi pull push commit build 注:可以使用docker COMMAND --help来查看COMMAND的详细用法,本文只介绍常用的子集. 一.启动容器 启动之前未启动过的容器: docker run [-d] [-i] [-t] IMAGE [Command] [Arguments] · -d: