博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c语言输出编号姓名成绩,c语言如何输入编号和姓名
阅读量:6913 次
发布时间:2019-06-27

本文共 2881 字,大约阅读时间需要 9 分钟。

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#include

#include

#define NAME "root"

#define PAWD "123456"

struct login_widget

{

GtkWidget *window;

GtkWidget *label_tips;

GtkWidget *button_login;

GtkWidget *button_exit;

GtkWidget *entry_username;

GtkWidget *entry_password;

GtkWidget *label_username;

GtkWidget *label_password;

GtkWidget *vbox;

GtkWidget *hbox_username;

GtkWidget *hbox_password;

GtkWidget *hbox_button;

}wgt;

void login(GtkWidget *widget,gpointer data)

{

gchar *name;

gchar *pawd;

struct login_widget *wgt;

wgt=(struct login_widget*)data;

name=gtk_entry_get_text(GTK_ENTRY(wgt->entry_username));

pawd=gtk_entry_get_text(GTK_ENTRY(wgt->entry_password));

if(!strcmp(name,NAME)&&!strcmp(pawd,PAWD))

gtk_label_set_text(GTK_LABEL(wgt->label_tips),

"Welcome to GTK!");

else

gtk_label_set_text(GTK_LABEL(wgt->label_tips),

"Failed to login!");

}

void init_login_widget()

{

wgt.window=gtk_window_new(GTK_WINDOW_TOPLEVEL);

wgt.label_tips=gtk_label_new("Welcome,please login");

wgt.button_login=gtk_button_new_with_label("login");

wgt.button_exit=gtk_button_new_with_label("exit");

wgt.entry_username=gtk_entry_new_with_max_length(10);

wgt.entry_password=gtk_entry_new_with_max_length(10);

wgt.label_username=gtk_label_new("User name:");

wgt.label_password=gtk_label_new("Password:");

wgt.vbox=gtk_vbox_new(FALSE,20);

wgt.hbox_username=gtk_hbox_new(FALSE,20);

wgt.hbox_password=gtk_hbox_new(FALSE,20);

wgt.hbox_button=gtk_hbox_new(FALSE,20);

gtk_window_set_title(GTK_WINDOW(wgt.window),"Login");

gtk_window_set_resizable(GTK_WINDOW(wgt.window),FALSE);

gtk_box_pack_start(GTK_BOX(wgt.hbox_username),

wgt.label_username,TRUE,FALSE,10);

gtk_box_pack_start(GTK_BOX(wgt.hbox_username),

wgt.entry_username,TRUE,FALSE,10);

gtk_box_pack_start(GTK_BOX(wgt.hbox_password),

wgt.label_password,TRUE,FALSE,10);

gtk_box_pack_start(GTK_BOX(wgt.hbox_password),

wgt.entry_password,TRUE,FALSE,10);

gtk_box_pack_start(GTK_BOX(wgt.hbox_button),

wgt.button_login,TRUE,FALSE,10);

gtk_box_pack_start(GTK_BOX(wgt.hbox_button),

wgt.button_exit,TRUE,FALSE,10);

gtk_box_pack_start(GTK_BOX(wgt.vbox),wgt.label_tips,

TRUE,FALSE,10);

gtk_box_pack_start(GTK_BOX(wgt.vbox),wgt.hbox_username,

TRUE,FALSE,10);

gtk_box_pack_start(GTK_BOX(wgt.vbox),wgt.hbox_password,

TRUE,FALSE,10);

gtk_box_pack_start(GTK_BOX(wgt.vbox),wgt.hbox_button,

TRUE,FALSE,10);

gtk_entry_set_visibility(GTK_ENTRY(wgt.entry_password),

FALSE);

gtk_entry_set_invisible_char(GTK_ENTRY(wgt.entry_password),

'*');

g_signal_connect(GTK_OBJECT(wgt.button_login),"clicked",

GTK_SIGNAL_FUNC(login),&wgt);

g_signal_connect(GTK_OBJECT(wgt.window),"destroy",

G_CALLBACK(gtk_main_quit),NULL);

g_signal_connect(GTK_OBJECT(wgt.button_exit),"clicked",

G_CALLBACK(gtk_main_quit),NULL);

gtk_container_add(GTK_CONTAINER(wgt.window),wgt.vbox);

gtk_widget_show_all(wgt.window);

}

int main(int argc,char **argv)

{

gtk_init(&argc,&argv);

init_login_widget();

gtk_main();

return 0;

}

转载地址:http://bincl.baihongyu.com/

你可能感兴趣的文章
android TDD平台插入双卡时,查看允许返回发送报告的选项,去掉勾选,不起作用...
查看>>
2013年8月第2个周结
查看>>
(转)C的代码是如何变成程序的
查看>>
Udp SocketAsyncEventArgs SocketAsyncDataHandler
查看>>
音频处理平台
查看>>
jQuery(function(){})与(function(){})(jQuery)的区别
查看>>
android widget 开发实例 : 桌面便签程序的实现具体解释和源代码 (上)
查看>>
为什么需要在TypedArray后调用recycle
查看>>
安装windows7、windows8.1提示无法创建新的分区
查看>>
SpringAOP
查看>>
Java_动态重新加载Class机制
查看>>
八皇后问题
查看>>
关于Parse字符串为时间一次被坑经历
查看>>
BZOJ 2303: [Apio2011]方格染色 [并查集 数学!]
查看>>
dubbo方法调用的timeout设置
查看>>
System Monitor for Mac(系统监控工具)破解版安装
查看>>
django cron choice
查看>>
标准模板库(STL)学习指南之priority_queue优先队列
查看>>
开源代码分析技巧之——打印调用逻辑
查看>>
Cocos2d-x 让精灵随手指移动起来二(简单实现)
查看>>