gtk默认信号id的列表

 

 

 

   gtk版本号, 2.8.8, 我查了一下前面的gtk版本,相同信号在不同gtk版本中不同id号,可以用g_single_lookup函数,用信号名来查找id号。

 

以下是gtk默认的信号名列表:

--------------------------------------------------

 

show
hide
map
unmap
realize
unrealize
size_request
size_allocate
state_changed
parent_set
hierarchy_changed
style_set
direction_changed
grab_notify
child_notify
mnemonic_activate
grab_focus
focus
event
event_after
button_press_event
button_release_event
scroll_event
motion_notify_event
composited_changed
delete_event
destroy_event
expose_event
key_press_event
key_release_event
enter_notify_event
leave_notify_event
configure_event
focus_in_event
focus_out_event
map_event
unmap_event
property_notify_event
selection_clear_event
selection_request_event
selection_notify_event
selection_received
selection_get
proximity_in_event
proximity_out_event
drag_leave
drag_begin
drag_end
drag_data_delete
drag_motion
drag_drop
drag_data_get
drag_data_received
visibility_notify_event
client_event
no_expose_event
window_state_event
grab_broken_event
popup_menu
show_help
accel_closures_changed
screen_changed
can_activate_accel

 

 

 

#include <gtk/gtk.h> // 按钮点击事件处理函数 static void activate(GtkApplication* app, gpointer user_data) { // 创建主窗口,将其与应用关联,并设置标题 GtkWidget *window = gtk_application_window_new(app); gtk_window_set_title(GTK_WINDOW(window), "GTK示例程序"); gtk_window_set_default_size(GTK_WINDOW(window), 400, 300); gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER); // 创建垂直布局盒,设置子控件间距为10像素 GtkWidget *vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 10); gtk_container_set_border_width(GTK_CONTAINER(vbox), 10); gtk_container_add(GTK_CONTAINER(window), vbox); // 创建标签控件并添加到布局盒 GtkWidget *label = gtk_label_new("欢迎使用GTK+3和C语言示例程序"); gtk_box_pack_start(GTK_BOX(vbox), label, TRUE, TRUE, 0); // 创建按钮控件 GtkWidget *button = gtk_button_new_with_label("点击我"); gtk_box_pack_start(GTK_BOX(vbox), button, TRUE, TRUE, 0); // 为按钮的"clicked"信号连接回调函数 g_signal_connect(button, "clicked", G_CALLBACK(gtk_main_quit), NULL); // 显示所有控件 gtk_widget_show_all(window); } int main(int argc, char **argv) { // 创建GTK应用,使用唯一的应用ID GtkApplication *app = gtk_application_new( "org.gtk.example", G_APPLICATION_FLAGS_NONE); // 连接应用的"activate"信号到回调函数 g_signal_connect(app, "activate", G_CALLBACK(activate), NULL); // 运行应用并获取返回值 int status = g_application_run(G_APPLICATION(app), argc, argv); // 释放应用资源 g_object_unref(app); return status; }
06-08
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值