- 论坛徽章:
- 0
|
代码:
#include<gtk/gtk.h>
GtkWidget *text;
GtkTextBuffer *buffer;
GtkTextIter *Iter;
void button_event(GtkWidget *widget,gpointer *data);
int main(int argc,char *argv[])
{
GtkWidget *window;
GtkWidget *button;
GtkWidget *box;
gtk_init(&argc,&argv);
window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_size_request(window,200,150);
g_signal_connect(GTK_OBJECT(window),"destroy",G_CALLBACK(gtk_main_quit),NULL);
box = gtk_vbox_new(FALSE,0);
gtk_widget_set_size_request(window,200,120);
gtk_container_add(GTK_CONTAINER(window),box);
gtk_box_pack_start(GTK_BOX(box),text,FALSE,FALSE,0);
buffer = gtk_text_view_get_buffer(GTK_TEXT(text));
gtk_widget_show(text);
button = gtk_button_new_with_label("start" ;
gtk_box_pack_start(GTK_BOX(box),button,FALSE,FALSE,5);
g_signal_connect(GTK_OBJECT(window),"clicked",GTK_SIGNAL_FUNC(button_event),NULL);
gtk_widget_show(window);
gtk_main();
}
void button_event(GtkWidget *widget,gpointer *data)
{
const gchar *texta ="wo cao!";
GtkTextIter start,end;
GtkTextBuffer *buffer;
gtk_text_buffer_get_bounds(GTK_TEXT_BUFFER(buffer),&start,&end);
gtk_text_buffer_insert(GTK_TEXT_BUFFER(buffer),&start,texta,strlen(texta));
gtk_widget_show(box);
text = gtk_text_new();
}
编译的错误如下:
zhencao.c: In function ‘main’:
zhencao.c:22: 警告:赋值时将整数赋给指针,未作类型转换
zhencao.c:26: 警告:传递参数 1 (属于 ‘gtk_text_view_get_buffer’)时将整数赋给指针,未作类型转换
zhencao.c: In function ‘button_event’:
zhencao.c:43: 警告:隐式声明与内建函数 ‘strlen’ 不兼容
/tmp/ccj0fiRj.o: In function `main':
zhencao.c .text+0x142): undefined reference to `GTK_TEXT'
collect2: ld 返回 1
百度了,也没正规的解决方法,希望大家帮忙 |
|