《linux实践考察》PPT课件.ppt

上传人:za****8 文档编号:3003839 上传时间:2019-12-05 格式:PPT 页数:25 大小:283.46KB
返回 下载 相关 举报
《linux实践考察》PPT课件.ppt_第1页
第1页 / 共25页
《linux实践考察》PPT课件.ppt_第2页
第2页 / 共25页
《linux实践考察》PPT课件.ppt_第3页
第3页 / 共25页
点击查看更多>>
资源描述
Linux下GUI开发以Java实现模拟自动取款机,姓名:邹齐明 学号:200992140141 指导老师:兰建平,1 Linux GUI应用开发现状,目前Linux操作系统在市场上呈现一种“叫好不叫座“的局面,在一定的程度上与在其上运行的好用的应用程序数量太少有着的密切的关系。尽管能在Linux上运行的应用程序已经很多,但大多数都较难安装与使用,而且很多不是很稳定。 要改善Linux应用程序的易用性,大量采用GUI(图形用户界面)是一个必然的趋势。但是目前Linux平台GUI应用程序的开发仍然不太容易。尽管有不少的开放源码开发工具在极力增强其GUI应用程序开发能力,但是由于标准不统一、资料太少等原因很难推广。Kylix等商业开发工具尽管具有大公司的技术实力支撑,但由于价格等因素也难以很快推广。这种局面不尽快打破,Linux的应用就不可能得到很快的普及。,2 .Java的特点,自1ArrayArray5年Sun Microsystem推出Java语言以来,Java语言与Java技术均得到了飞速的发展。因其强大的网络功能、良好的跨平台特性、较高的开发效率成为国内外软件开发领域的一种强大工具。 目前Java程序已经能运行在从Windows系列、Unix系列、Mac OS系列到Linux等几乎所有操作系统平台上,而且特别重要的是它已经能做到“一次编写,到处运行“;另一方面,与C+等传统程序设计语言相比,用Java来开发GUI应用程序的难度已经大大降低;加上Java语言所具有的纯面向对象、网络功能强大等特性,使得Java非常适于用来编制应用软件。,3. 用Java开发Linux GUI应用的优点,正由于Java语言的特点以及Linux操作系统的发展现状,使得用Java语言来开发Linux平台GUI应用程序成为了一种很好的方法。,一方面,用Java语言在Linux平台上开发GUI应用程序对于习惯了在Windows平台上用Java编程的程序员来说无须改变编程习惯。因为Java有良好的跨平台特性,在Linux下编程与在Windows下编程没什么两样,如果用纯Java编程,则程序中使用的类、属性、方法等等都不用改变,甚至还可以在Windows下编辑、编译好Java程序再直接移植到Linux下执行。,另一方面,由于在Linux平台上存在大量的优秀的开放源代码软件开发工具,包括用于Java程序开发的如NetBeans等工具,这样如果在Linux平台上用这些开放源代码软件开发工具进行Java软件开发,其所需的成本可以比在Windows下进行开发低得多。当然在Linux下也存在像Borland Jbuilder、IBM Visual Age等商业Java软件开发工具,它们都具有强大的功能、完备的文档,更有利于在Linux上进行Java软件开发。,4.用Java开发Linux GUI应用的基本方法,4.1 开发环境的安装与配置 JDK的安装,要Linux平台上开发Java应用,最基本的方式需要下载一个JDK,这是由Sun公司免费提供的一个Java软件开发包。下载得到的文件一般形如j2sdk1.3-linux.rpm.bin,首先将其拷贝到合适的目录(如/usr/src或/usr/local等)下,执行./j2sdk1.3-linux.rpm.bin,会产生一个j2sdk1.3-linux.rpm文件,这是一个典型的RPM软件包,再用RPM软件包管理工具就可直接安装JDK,在安装过程中会提示许可信息,同意其协议就可很顺利地安装了。,路径的配置,为了做到在任意路径下均可直接执行Java编程相关命令,需要修改/etc/profile文件,在其中设置路径。具体方法是在其中加入这样一行: PATH=“$PATH/usr/jdk1.3“ 这里/usr/jdk1.3是JDK的安装路径。,4.2 基本开发过程,编辑源程序 编译源程序 调试运行程序,4.3 基本开发方法,其实无论在什么平台下,GUI应用程序的基本开发方法都是相似的。一般都包括下面这样四个步骤:,创建容器,首先要创建一个GUI应用程序,需要创建一个用于容纳所有其它GUI组件元素的载体,Java中称为容器。典型的包括窗口(Window)、框架(Frame/JFrame)、对话框(Dialog/JDialog)、面板(Panel/JPanel)等。只有先创建了这些容器,其它界面元素如按钮(Button/JButton)、标签(Label/JLabel)、文本框(TextField/JTextField)等才有地方放。,添加组件,为了实现GUI应用程序的功能,为了与用户交换,需要在容器上添加各种组件/控件。这需要根据具体的功能要求来决定用什么组件。例如,如果需要提示信息,可用标签(Label/JLabel);如果需要输入少量文本,可用文本框(TextField/JTextField);如果需要输入较多文本,可用文本区域(TextArea/JTextArea);如果需要输入密码,可用密码域(JPasswordField)等等。,安排组件,与传统的Windows环境下的GUI软件开发工具不同,为了更好地实现跨平台,Java程序中各组件的位置、大小一般不是以绝对量来衡量,而是以相对量来衡量。例如有时候,程序的组件的位置是按“东/East“、“西/West“、“南/South“、“北/North“、“中/Center“这种方位来标识的。因此,在组织界面时,除了要考虑所需的组件种类外,还需要考虑如何安排这些组件的位置与大小。这一般是通过设置布局管理器(Layout Manager)及其相关属性来实现的。事实上上述按方位来安排组件就是采用了Java中多种布局管理器里的BorderLayout布局管理器。,处理事件,为了完成一个GUI应用程序所应具备的功能,除了适当地安排各种组件产生美观的界面外,还需要处理各种界面元素事件,以便真正实现与用户的交换,完成程序的功能。在Java程序中这一般是通过实现适当的事件监听者接口来完成的。比如如果需要响应按钮事件,就需要实现ActionListener监听者接口;如果需要响应窗口事件,就需要实现WindowListener监听者接口。,5.开发实例,下面是一个在Linux下用Java开发GUI应用程序的实例。该程序的主要功能是提供一个用于输入用户名与密码以登录到某一系统的界面,如果用户输入相关信息后单击“登录“按钮,系统将在窗口的下半部分显示所输入的用户名与密码信息,如果单击“退出“按钮,程序将停止运行。,模拟自动取款机初始界面:,模拟自动取款机取款界面:,6.模拟自动取款机主程序:,package zidonghua.night; import java.util.Scanner; import zidonghua.night.date.CustomerList; import zidonghua.night.date.ManagerList; import zidonghua.night.view.Menu; public class Start public static Scanner scanner=new Scanner(System.in); public static ManagerList managerlist=new ManagerList(); public static CustomerList customerlist=new CustomerList(); public static void main(String args) managerlist.init();/管理员列表初始化 customerlist.init();/账户初始化 Menu menu=new Menu(); menu.ShowloginMenu(); ,模拟自动取款机控制执行程序:,package zidonghua.night.date; import zidonghua.night.Start; public class Atmdate public boolean login() System.out.print(“请输入银行卡号“); String name=Start.scanner.next(); System.out.print(“请输入密码“); String pwd=Start.scanner.next(); Manager manager=Start.managerlist.findMangerByNameandPwd(name, pwd); if (manager!=null) return true; else return false; ,模拟自动取款机界面程序:,package zidonghua.night.view; import java.text.SimpleDateFormat; import zidonghua.night.Start; import zidonghua.night.date.Customer; public class CustomerView SimpleDateFormat sdf=new SimpleDateFormat(“yyyy-MM-dd“); /修正长度 public String getFixLength(String str,int length) if(str.length()length) return str.substring(0,length); for (int i = str.length(); i length; i+) str+=“ “; return str; public void findCustomer() Menu menu=new Menu(); System.out.print(“请输入你要查询的卡号“); int id=Start.scanner.nextInt(); Customer customer=Start.customerlist.findCustomerById(id); if(customer!=null) ,System.out.println(“ 卡号 姓名 余额“); System.out.println(“|-|-|-|“); System.out.print(“| “); System.out.print(this.getFixLength(String.valueOf(id),4); System.out.print(“| “); System.out.print(this.getFixLength(customer.getName(),9); System.out.print(“ | “); System.out.print(this.getFixLength(String.valueOf(customer.getMoney(), 6); System.out.print(“| “); System.out.println(); System.out.println(); System.out.println(); System.out.println(“请输入任意键返回上一层“); Start.scanner.next().charAt(0); menu.showCustomerMenu(); else System.out.print(“对不起您的输入有误,请重新输入“); findCustomer();,实践总结:,通过这次对Linux实践课题的制作,深刻的认识到Linux的实用性、广泛性、重要性。对一次学习Linux操作系统认识到它和Windos操作系统有这很大的差别,Linux它的运行好多都是指令化的,连安装个QQ都那么不容易,而在Windos下只是点击鼠标就能完成。,谢谢观看!,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!