资源描述:
《linpop聊天软件代码.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、一client.c2二server.c5三cl_sock.c7一client.c**********************************Client.c**Function:**createthechatwindow**功能:**创建聊天窗口**********************************/#include"client.h"#include/*头文件*/intissucceed=-1;GtkTextBuffer*show_buffer,*inp
2、ut_buffer;/*定义全局变量*/voidget_ip(GtkWidget*,gpointer);voidquit_win(GtkWidget*,gpointer);/*声明函数*/intmain(intargc,char**argv){/*用GTK创建窗体控件变量*/GtkWidget*window;/*定义一个窗体变量*/GtkWidget*show_text,*input_text,*ip_text;/*定义三个文本框变量*/GtkWidget*ip_label,*space_label
3、;/*定义两个标签变量*/GtkWidget*link_button,*send_button,*quit_button;/*定义三个按钮变量*/GtkWidget*hbox,*vbox;/*定义两个窗口变量*/GtkWidget*scrolled1,*scrolled2;/*创建两个滚动条*/gtk_init(&argc,&argv);/*呼叫函数启动GTK*/window=gtk_window_new(GTK_WINDOW_TOPLEVEL);/*创建一个新视窗*/gtk_window_set_
4、title(GTK_WINDOW(window),"FreeChat-Client");/*设置窗体标题*/gtk_window_set_position(GTK_WINDOW(window),GTK_WIN_POS_CENTER);/*设置窗体位置*/gtk_window_set_default_size(GTK_WINDOW(window),430,320);/*设置窗体位置*/g_signal_connect(GTK_OBJECT(window),"destroy",GTK_SIGNAL_FU
5、NC(quit_win),NULL);/*按destroy“退出”按钮*/ip_label=gtk_label_new("IP:");/*设置IP标签为IP:*/space_label=gtk_label_new("");/*设置标签*/link_button=gtk_button_new_with_label("连接");/*设置按钮*/send_button=gtk_button_new_with_label("发送");/*设置按钮*/quit_button=gtk_button_new_wi
6、th_label("关闭");/*设置按钮*/ip_text=gtk_entry_new();/*设置文本框*/show_text=gtk_text_view_new();/*设置文本框*/input_text=gtk_text_view_new();/*设置文本框*/gtk_entry_set_max_length(GTK_ENTRY(ip_text),15);/*设置IP输入框最大长度*/show_buffer=gtk_text_view_get_buffer(GTK_TEXT_VIEW(sho
7、w_text));/*获取显示文本框的缓冲区*/input_buffer=gtk_text_view_get_buffer(GTK_TEXT_VIEW(input_text));/*获取输入文本框的缓冲区*/gtk_text_view_set_editable(GTK_TEXT_VIEW(show_text),FALSE);/*设置显示文本框不可编辑*/scrolled1=gtk_scrolled_window_new(NULL,NULL);/*创建滚动窗口*/scrolled2=gtk_scrol
8、led_window_new(NULL,NULL);/*创建滚动窗口*/gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scrolled1),show_text);/*把文本框添加到滚动窗口*/gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(scrolled2),input_text);/*把文本框添加到滚动窗口*/gtk_scrol