当前位置: 技术问答>linux和unix
gtk中的一个函数问题
来源: 互联网 发布时间:2016-01-16
本文导语: 各位高手,我用GTK+做了一个小界面,里面有: GtkWidget *button; GtkWidget *entry; 然后gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(do_send),entry); 下面是我的do_send()函数 void do_send(GtkWidget *button,gpointer entry) { const gch...
各位高手,我用GTK+做了一个小界面,里面有:
GtkWidget *button;
GtkWidget *entry;
然后gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(do_send),entry);
下面是我的do_send()函数
void do_send(GtkWidget *button,gpointer entry)
{
const gchar *s;
s=gtk_entry_get_text(GTK_ENTRY(entry));
if(strlen(s))
write(wisock.sock,s,strlen(s))
}
目的就是点击一下按钮向套接字发送entry中的信息(wisock.sock就是套接字)。
可程序运行到这就出现段错误,我看了一下调试信息,看消息上说问题出在
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1217399104 (LWP 6305)]
0xb79d719c in g_type_check_instance_cast () from /usr/lib/libgobject-2.0.so.0
不懂这是怎么搞的...?
请高手救救我!
GtkWidget *button;
GtkWidget *entry;
然后gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(do_send),entry);
下面是我的do_send()函数
void do_send(GtkWidget *button,gpointer entry)
{
const gchar *s;
s=gtk_entry_get_text(GTK_ENTRY(entry));
if(strlen(s))
write(wisock.sock,s,strlen(s))
}
目的就是点击一下按钮向套接字发送entry中的信息(wisock.sock就是套接字)。
可程序运行到这就出现段错误,我看了一下调试信息,看消息上说问题出在
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1217399104 (LWP 6305)]
0xb79d719c in g_type_check_instance_cast () from /usr/lib/libgobject-2.0.so.0
不懂这是怎么搞的...?
请高手救救我!
|
GtkWidget *entry;
void do_send(GtkWidget *button,gpointer entry)
你仔细看看,entry是个部件,你传给do_send的entry,
改为
void do_send(GtkWidget *button,GtkWidget *entry)
void do_send(GtkWidget *button,gpointer entry)
你仔细看看,entry是个部件,你传给do_send的entry,
改为
void do_send(GtkWidget *button,GtkWidget *entry)