分类: 嵌入式
2011-11-25 17:15:27
1 结构定义
==============================================================================
typedef struct {
GtkWidget *vbox; GtkBox类型的变量,对应对话框中位于水平分隔条上的部分
GtkWidget *action_area; GtkBox类型的变量,对应对话框中位于水平分隔条下面的部分
} GtkDialog;
==============================================================================
2 说明
对话框构件是从GtkWindow构件中继承的,因此能够使用操作GtkWindow构件的方法
3 对话框的使用
==============================================================================
对话框的创建
GtkWidget* dialog_window=gtk_dialog_new();
gtk_window_set_title(GTK_WINDOW(dialog_window),"Test Dialog");
gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog_window)->action_area),button,TRUE,TRUE,0);
==============================================================================
对话框的事件处理
void closeDialog(GtkWidget* widget,gpointer dialog)
{
gtk_widget_destroy(GTK_WIDGET(dialog));
}
==============================================================================
模式对话框的创建
1.gtk_grab_add函数使得某个构件成为当前捕获鼠标和键盘事件的构件。此时,同一个应用程序中的所有鼠标和键盘事件都将被发送给改构件进行处理,其它构件接收不到鼠标和键盘事件
2.在显示对话框构件之前使用gtk_grab_add方法可以用来创建一个模式对话框
3.使用模式对话框时,应该在其销毁函数中使用gtk_grab_remove来移除模式对话框对事件的捕获
4 图片