ImageVerifierCode 换一换
格式:PPT , 页数:23 ,大小:101KB ,
资源ID:6213825      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-6213825.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Linux第12讲.ppt)为本站会员(dcjskn)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

Linux第12讲.ppt

1、Linux 系统应用与程序设计,主讲:邝颖杰 电邮:,gtk-demo pkg-config,GTK+程序示例,登录程序 按钮,#include #include #include const char * password=“secret“; void closeApp(GtkWidget *window,gpointer data) gtk_main_quit(); void button_clicked(GtkWidget *window,gpointer data) const char *password_text=gtk_entry_get_text(GTK_ENTRY(GtkWi

2、dget *)data); if (strcmp(password_text,password)=0) printf(“Access granted!n“); else printf(“Access denied!n“); ,int main(int argc,char *argv) GtkWidget *window; GtkWidget *username_label,*password_label; GtkWidget *username_entry,*password_entry; GtkWidget *ok_button; GtkWidget *hbox1,*hbox2; GtkWi

3、dget *vbox; gtk_init(,username_label=gtk_label_new(“Login:“); password_label=gtk_label_new(“Password:“); username_entry=gtk_entry_new(); password_entry=gtk_entry_new(); gtk_entry_set_visibility(GTK_ENTRY(password_entry),FALSE); ok_button=gtk_button_new_with_label(“OK“); g_signal_connect(GTK_OBJECT(o

4、k_button),“clicked“,GTK_SIGNAL_FUNC(button_clicked),password_entry); hbox1=gtk_hbox_new(TRUE,5); hbox2=gtk_hbox_new(TRUE,5); vbox=gtk_vbox_new(FALSE,10); gtk_box_pack_start(GTK_BOX(hbox1),username_label,TRUE,FALSE,5); gtk_box_pack_start(GTK_BOX(hbox1),username_entry,TRUE,FALSE,5); gtk_box_pack_start

5、(GTK_BOX(hbox2),password_label,TRUE,FALSE,5); gtk_box_pack_start(GTK_BOX(hbox2),password_entry,TRUE,FALSE,5); gtk_box_pack_start(GTK_BOX(vbox),hbox1,FALSE,FALSE,5); gtk_box_pack_start(GTK_BOX(vbox),hbox2,FALSE,FALSE,5); gtk_box_pack_start(GTK_BOX(vbox),ok_button,FALSE,FALSE,5); gtk_container_add(GTK

6、_CONTAINER(window),vbox); gtk_widget_show_all(window); gtk_main(); return 0;,GtkButton,GtkButton GtkToggleButton GtkCheckButton GtkRadioButton,#include #include GtkWidget *togglebutton; GtkWidget *checkbutton; GtkWidget *radiobutton1,*radiobutton2; void closeApp(GtkWidget *window,gpointer data) gtk_

7、main_quit(); void add_widget_with_label(GtkContainer *box,gchar *caption,GtkWidget *widget) GtkWidget *label=gtk_label_new(caption);GtkWidget *hbox=gtk_hbox_new(TRUE,4);gtk_container_add(GTK_CONTAINER(hbox),label);gtk_container_add(GTK_CONTAINER(hbox),widget);gtk_container_add(box,hbox); ,void print

8、_active(char *button_name,GtkToggleButton *button) gboolean active=gtk_toggle_button_get_active(button);printf(“%s is %sn“,button_name,active?“active“:“not active“); void button_clicked(GtkWidget *button,gpointer data) print_active(“Checkbutton“,GTK_TOGGLE_BUTTON(checkbutton);print_active(“Togglebut

9、ton“,GTK_TOGGLE_BUTTON(togglebutton);print_active(“Radiobutton1“,GTK_TOGGLE_BUTTON(radiobutton1);print_active(“Radiobutton2“,GTK_TOGGLE_BUTTON(radiobutton2);printf(“n“); ,gint main(gint argc,gchar *argv) GtkWidget *window;GtkWidget *button;GtkWidget *vbox;gtk_init(,vbox=gtk_vbox_new(TRUE,4);add_widg

10、et_with_label(GTK_CONTAINER(vbox),“ToggleButton:“,togglebutton);add_widget_with_label(GTK_CONTAINER(vbox),“CheckButton:“,checkbutton);add_widget_with_label(GTK_CONTAINER(vbox),“Radio 1:“,radiobutton1);add_widget_with_label(GTK_CONTAINER(vbox),“Radio 2:“,radiobutton2);add_widget_with_label(GTK_CONTAI

11、NER(vbox),“Button:“,button);g_signal_connect(GTK_OBJECT(button),“clicked“,GTK_SIGNAL_FUNC(button_clicked),NULL);gtk_container_add(GTK_CONTAINER(window),vbox);gtk_widget_show_all(window);gtk_main();return 0; ,程序的参数处理,Shell脚本程序使用$0,$1接收参数 C程序: int main(int argc,char *argv) argc是程序参数的个数,argv是代表参数自身的字符串

12、数组 如果不声明argc,argv,就不能使用,Shell接收用户输入的命令行,将命令行分解成单词,然后把单词放入argv数组 如 myapp left right and center argc:4 argv:“myapp”,”left”,”right”,”and center” 参数个数包括程序自身名称,命令行选项,ls l s t r df m 命令行开关都应以一个短横线开头,包含单个字母或数字,C程序处理命令行选项,演示,利用getopt函数处理命令行选项,getopt是linux的函数,它支持需要关联值和不需要关联值的选项 Int getopt(int argc,char *cons

13、t argv,const char *optstring) *optstring是选项指定字符串,告诉getopt哪些选项可用,以及每个选项是否有关联值 optstring每个字符代表一个单字符选项,如果一个字符后面紧跟一个冒号,则表明选项有关联值,getopt (argc ,argv,”if:lr”) 该函数返回值是argv数组的下一个选项字符 如果选项有关联值,则外部变量optarg指向这个值 如果选项处理完毕,getopt返回-1,特殊参数- -使函数停止 如果遇到无法识别的选项,返回一个?号,并把它保存在外部变量optopt中 如果选项要求关联值,但未提供该值,则返回:,程序参数,演示

14、,时间和日期,所有的unix系统都使用同一个时间和日期的起点:格林尼治时间(GMT)1970年1月1日0点,这是unix纪元的起点,linux也不例外 Linux系统中所有的时间都以从那时起经过的秒数来衡量 MS-DOS也是类似,只是它的纪元始于1980年,时间通过一个预定义的类型time_t处理,是长整数 #include time_t time(time_t *tloc),#include #include #include int main() int i;time_t thetime;for (i=1;i=10;i+)thetime=time(time_t *)0);printf(“the time is %ld n“,thetime);sleep(2);exit(0); ,gmtime函数,struct tm *gmtime(const time_t timeval) tm的结构 Int tm_sec Int tm_min Int tm_hour Int tm_mday Int tm_mon Int tm_year Int tm_wday 星期几 Int tm_yday Int tm_isdst 是否夏令时,#include #include int main() struct tm *tm_ptr;time_t thetime;(void)time( ,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报