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

#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;

}

c语言怎么输入学号姓名,c语言如何输入编号和姓名相关推荐

  1. c语言报告程序分析报告,2012C语言程序分析报告.doc

    2012C语言程序分析报告 C语言程序设计专周 专 周 报 告 班级:10611 学号:20 姓名: 设计时间:2011-5-30至2011-6-3 一.设计题目:职工工资管理小软件 二.实习目的 1 ...

  2. c语言咋样编程学号,C语言 用结构体类型数组编程实现输入5个学生的学号姓名平时成绩期中成绩和期末成绩然后输出每位...

    满意答案 zhyx520325 推荐于 2020.12.09 采纳率:41%    等级:10 已帮助:1973人 #include #include //C语言 用结构体类型数组编程实现输入5个学生 ...

  3. C语言输出不及格学生姓名,C++:输入10个学生的姓名、学号和成绩,将其中不及格者的姓名、学号和成绩输出。...

    满意答案 josjosh 2017.07.03 采纳率:49%    等级:9 已帮助:3268人 [解题思路] 本题用类数组很好解决.可以先声明一个具有姓名.学号.成绩3个数据成员的类,然后输出.输 ...

  4. c语言求对应学号的总成绩,c语言 求大神编程。定义一个学生结构体,包括学号、姓名、年龄、成绩。1、要求输入五个学生相应的信息,求学生成绩总和。2、输入一个学生学号,把该学生全部信息输出。...

    这题目咋这么熟悉呢,好像我们当初c结课的时候课程设计就是这个....这个很简单的. #include struct student { /*这里面定义你的学生变量,学号啥的*/ }; int main ...

  5. 输入学号查询课程c语言,广工c语言课程设计

    广工c语言课程设计 目 录 一.设计目的 二.设计要求 三.总体设计 四.详细设计 五.调试与测试 六.结果 七.心得与体会 八 .程序清单 一.设计目的 (1)基本掌握面向过程程序设计的基本思路和方 ...

  6. c语言输入学号查找成绩,C语言程序设计按学号查询成绩

    C语言程序设计按学号查询成绩 答案:1  信息版本:手机版 解决时间 2019-10-05 15:03 已解决 2019-10-05 09:05 #include void main() {int x ...

  7. c语言动态分配输出学生成绩,C语言之:结构体动态分配内存(利用结构体数组保存不超过10个学生的信息,每个学生的信息包括:学号、姓名和三门课(高数、物理和英语 )的成绩和平均分(整型)。)...

    题目内容: 利用结构体数组保存不超过10个学生的信息,每个学生的信息包括:学号.姓名和三门课(高数.物理和英语 )的成绩和平均分(整型). 编写程序,从键盘输入学生的人数,然后依次输入每个学生的学号. ...

  8. c语言学生成绩管理系统 性别,c语言学生管理系统学生成绩管理系统 功能: 每个学生信息为一个记录,包括学号,姓名,性别,3 门课程成绩...

    匿名用户 1级 2011-07-07 回答 #include"stdio.h" #include"conio.h" #include"string.h ...

  9. c语言输入员工序号和姓名,用c语言输入一组员工的编号、姓名及工资,然后将其输出...

    #include #define NUM 10 struct staff { int num; char name[10]; int salary; }; int main() { struct st ...

  10. c语言查询学号(字符串),c语言短学期

    <C语言程序设计课程>实验教学大纲 课程名称:C语言程序设计 课程代码:304056031 304096031 课程属性:专业(技术)基础课 实验教材或指导书名称:自编 实验性质:独立开设 ...

最新文章

  1. Cobbler-自动化部署神器
  2. 关于Mybaits,我总结了10种通用的写法
  3. 等待时间clientNYOJ 179 LK's problem
  4. 我失败的阿里程序员生涯
  5. PS菜鸟入门 -- 添加滤镜
  6. kaggle (自杀分析)
  7. Java集合框架:Collections工具类
  8. P3667 [USACO17OPEN]Bovine Genomics
  9. Hadoop单机环境搭建整体流程
  10. Nginx配置静态资源
  11. HDU 5693:D Game(区间DP)
  12. MyBatis3官方文档
  13. 【毕业设计】基于Android的家校互动平台开发(内含完整代码和所有文档)——爱吖校推(你关注的,我们才推)
  14. 梅特勒托利多xk3124电子秤说明书_梅特勒托利多电子秤校正标定方法
  15. LoadLibrary加载dll失败的问题
  16. dva的用法_dva入门讲解
  17. android摇一摇功能实现
  18. 稀释消费次元壁,华为的移动生活新范式
  19. Pyhon中利用GM(1,1)和ARIMA模型对卫星DCB值进行预测
  20. 2021云栖大会丨果断收藏!「混合云参会指南」来啦

热门文章

  1. 关于jConfirm回传的解决方案
  2. 五大常用算法之二:动态规划算法
  3. 关于 MySQL LEFT JOIN 你可能需要了解的三点
  4. [CF482B]Interesting Array
  5. 【转载】Linux常用命令1
  6. PHP面试中常见的字符串与文件操作题目
  7. Linux下MySQL的几种安装方式
  8. 基于.Net的单点登录(SSO)解决方案
  9. 算法导论-动态规划(dynamic programming)
  10. 读书笔记之:C/C++程序员实用大全—C/C++最佳编程指南