如何获取输入文本GTK2 + Glade的值

时间:2017-06-27 14:24:24

标签: c gtk glade

当我点击send_button_clicked();我想获取条目“entryform1”中的值,我是怎么做到的?我的代码如下:

gtkwidgete1 = GTK_ENTRY( gtk_builder_get_object( gtkBuilder, "chave_Sessao_TextBox" ) );
const gchar *text1 = gtk_entry_get_text(e1);strcpy(ch1,text1);
g_print ("Contents of entries:%s\n", text1);

1 个答案:

答案 0 :(得分:0)

来自GNOME's GTK+ 2.0 Documentation

  

可以通过调用以下函数来检索Entry的内容。这在下面描述的回调函数中很有用:

const gchar *gtk_entry_get_text(GtkEntry *entry);

这真的很简单。所以做一些像:

GtkWidget *e1 = gtk_entry_new();
/* Set up whatever else you want to with your entry here */
g_signal_connect(e1, "activate", G_CALLBACK(print_message, e1));
gtk_box_pack_start (GTK_BOX (yourgtkbox), e1, TRUE, TRUE, 0);
gtk_widget_show(e1);

在你的回调函数print_message中打印出消息:

const gchar *text1 = gtk_entry_get_text(GTK_ENTRY (e1));
g_print ("Entry contents: %s\n", text1);

在GTK中,gchar只是typedefchar,因此您无需将其复制到另一个字符串中。

有关更多示例,请参阅提供的链接。