Java实例界面制作.ppt_第1页
Java实例界面制作.ppt_第2页
Java实例界面制作.ppt_第3页
Java实例界面制作.ppt_第4页
Java实例界面制作.ppt_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第8章Java实例界面制作,ggao,1.设计目标,设计一个学生管理系统功能设计添加、修改、删除、查看学生信息学生信息学号,姓名,电话,寝室,职务,籍贯等这一部分留在下一章建设界面设计主界面,查询界面,修改界面,添加界面,删除界面界面切换通过主界面可以切换到任意的其他界面其他界面可以返回到主界面,1.1主界面,1.2添加界面,1.3修改,暂时放一放这个功能,1.4删除,1.5查询,2项目设计思路,利用Jframe组件创建一个窗口,作为程序的运行窗口Jframe上放置Jpanel面板组件,作为程序的界面应该有5个Jpanel,代表5个界面Jpanel上放置各种其他组件来实现每个界面的功能Jlabel标签组件用来放提示文字Jbutton按钮组件用来放按钮JTextField文本框组件用来放输入数据的文本框Jtable表格组件用来放显示学生信息的表格,3创建项目窗口,1.创建项目SMS2.创建包Wtu3.创建主Java类包含Main方法mc(mainclass)4.main方法中创建Jframe对象jsw,标题设置为“学生管理系统”,坐标及大小(200,100,800,600),JFramejsw=newJFrame(“学生管理系统”);/生成一个jframe对象jsw.setBounds(200,100,800,600);/设置窗口坐标及大小jsw.setVisible(true);/显示窗口,隐藏:设置参数为false,4制作主界面,1.创建主界面Jpanel对象mjp,并将其添加到jsw上JPanelmjp=newJPanel();/创建一个默认布局的面板表示主界面mjp.setLayout(null);/设置mjp不使用布局,以实现其上组件的自定义布局jsw.getContentPane().add(mjp);/添加mjp到jsw上,2.创建一个Jlabel组件对象jml,用来显示“欢迎使用学生管理系统”,并放置在主界面jmp上JLabeljml=newJLabel(“欢迎使用学生管理系统”);/创建jml对象Jl.setBounds(100,100,200,100);/设置jml坐标及大小mjp.add(jml);/把jml添加到mjp(主界面)上面,3.创建4个Jbutton组件对象,用来表示4个功能按钮,设置它们的坐标及大小,并将它们添加到mjp上JButtonjbtQ=newJButton(查询);/创建按钮组件对象jbtQ.setBounds(100,400,80,40);/设置查询按钮坐标及大小JButtonjbtA=newJButton(添加);/创建按钮组件对象jbtA.setBounds(200,400,80,40);JButtonjbtU=newJButton(修改);/创建按钮组件对象jbtU.setBounds(300,400,80,40);JButtonjbtD=newJButton(删除);/创建按钮组件对象jbtD.setBounds(400,400,80,40);jbtQ.add(jml);/把jbtQ(查询按钮对象)添加到mjp(主界面)上jbtA.add(jml);jbtU.add(jml);jbtD.add(jml);注意:观察老师把多条代码摆放的位置,而且要理解为什么是那样?,5.Java项目打包,编制好的项目如果想脱离eclipse运行把项目打包成jar包Jar(JavaArchive,Java归档文件),它是将许多文件组合成的一个压缩文件包含main方法的jar包可以直接运行电脑安装jdk的前提下,打包过程,1.右键单击项目,选export2.在弹出的界面选JavaJARfile,然后点击next3.在弹出界面给定jar包位置及文件名,然后点击next4.在弹出的JARpackagingOptions面板,不用修改配置,直接点击next5.在弹出的面板,选择包含Main方法的类,然后点击finish完成导出,运行Jar包,1.鼠标直接单击可运行2.命令行运行javajartest.jar,课堂练习1,实现如下的界面,并把项目打包,并创建快捷方式,通过点击快捷方式直接运行程序,6制作其他界面的思路,可行的方法:在包含jsw的main方法中,比如要制作添加界面,再创建一个jpanel面板表示添加界面,创建文本框组件和按钮组件,并放置在其上,已完成该面板的界面设计。最后,通过把该面板添加到jsw对象上,来显示该面板缺点:程序不好维护;蜕化成结构化设计选择的方法:创建一个jpanel子类,界面及功能在该子类中完成,7设计JPanel子类,该类是4个其他界面的抽象,通过该类可以创建4个不同的Jpanel对象该类的界面目标在包含jsw对象的main方法中使用该类创建对象时,对象就具有了完整的界面定义,而无需再设置Ojpanel(otherjpanel)父类为Jpanel实现父类的JPanel()构造方法,1.创建OJpanel类,要选择构造函数一项,main方法不用选,2.修改Ojpanel代码,让其继承JPanel类,3.修改构造函数,让其执行父类的构造函数JPanel()子类必须实现父类的一个构造函数,8在OJpanel中设计界面,因为Ojpanel可以生成4中不同的界面,可以用4个方法来为不同的界面设计放在其上的组件initQ()表示为添加界面设计组件的方法该方法中要添加6个标签,6个文本框,2个按钮并将它们添加到Jpanel上此时的jpanel就是ojpanel(它具有jpanel的一切功能)类中要使用自己,用this,1.修改Ojpanel构造函数增加一个参数ptype,如果ptype为1则执行添加界面的设计方法initQ()并在构造方法中设置当前类布局为无this.setLayout(null);,2.设计方法initQ()创建Jlabel,JtextFiled,Jbutton组件对象添加到当前面板比如添加标签对象jl,则为:this.add(jl),表示把jl对象添加到由当前类产生的对象上,而当前类是一个从Jpanel对象派生的类,也就是把jl添加到一个jpanel面板对象上,intlx=100;intlxoffset=300;intly=100;intlyoffset=100;intlw=40;intlh=50;JLabeljlxh=newJLabel(学号);jlxh.setBounds(lx,ly,lw,lh);JLabeljlxm=newJLabel(姓名);jlxm.setBounds(lx+lxoffset,ly,lw,lh);JLabeljldh=newJLabel(电话);jldh.setBounds(lx,ly+lyoffset,lw,lh);JLabeljlqs=newJLabel(寝室);jlqs.setBounds(lx+lxoffset,ly+lyoffset,lw,lh);JLabeljlzw=newJLabel(职务);jlzw.setBounds(lx,ly+lyoffset*2,lw,lh);JLabeljljg=newJLabel(籍贯);jljg.setBounds(lx+lxoffset,ly+lyoffset*2,lw,lh);inttx=200;inttxoffset=300;intty=115;inttyoffset=100;inttw=120;intth=30;inttlength=20;JTextFieldjtfxh=newJTextField(tlength);jtfxh.setBounds(tx,ty,tw,th);JTextFieldjtfxm=newJTextField(tlength);jtfxm.setBounds(tx+txoffset,ty,tw,th);JTextFieldjtfdh=newJTextField(tlength);jtfdh.setBounds(tx,ty+tyoffset,tw,th);JTextFieldjtfqs=newJTextField(tlength);jtfqs.setBounds(tx+txoffset,ty+tyoffset,tw,th);JTextFieldjtfzw=newJTextField(tlength);jtfzw.setBounds(tx,ty+tyoffset*2,tw,th);JTextFieldjtfjg=newJTextField(tlength);jtfjg.setBounds(tx+txoffset,ty+tyoffset*2,tw,th);JButtonjbtA=newJButton(添加);/创建按钮组件对象jbtA.setBounds(200,400,80,40);JButtonjbtB=newJButton(返回);/创建按钮组件对象jbtB.setBounds(300,400,80,40);this.add(jlxh);this.add(jlxm);this.add(jldh);this.add(jlqs);this.add(jlzw);this.add(jljg);this.add(jtfxh);this.add(jtfxm);this.add(jtfdh);this.add(jtfqs);this.add(jtfzw);this.add(jtfjg);this.add(jbtA);this.add(jbtB);,3.在包含jsw的main方法中,创建OJpanel的添加界面对象ajp,并把其添加到jsw上,9添加按钮事件,给mjp的添加按钮设置事件,实现切换界面的功能jbtA.addActionListener(newActionListener()publicvoidactionPerformed(ActionEvente)这里放切换到添加界面的按钮);切换方法(隐藏mjp,添加并显示ajp)mjp.setVisible(false);/把主界面mjp设置为不可见jsw.getContentPane().add(ajp);/添加ajp到jsw上ajp.setVisible(true);/显示添加界面ajp在事件处理函数中,对象要变为final,10返回按钮事件,在OJpanel类中给返回按钮,添加事件jbtB.addActionListener(newActionListener()publicvoidactionPerformed(ActionEvente)隐藏谁?当前面板,可用this代替吗?添加谁?使用j

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论