Java设计用户注册界面.ppt

上传人:枫** 文档编号:571073106 上传时间:2024-08-08 格式:PPT 页数:23 大小:491.51KB
返回 下载 相关 举报
Java设计用户注册界面.ppt_第1页
第1页 / 共23页
Java设计用户注册界面.ppt_第2页
第2页 / 共23页
Java设计用户注册界面.ppt_第3页
第3页 / 共23页
Java设计用户注册界面.ppt_第4页
第4页 / 共23页
Java设计用户注册界面.ppt_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《Java设计用户注册界面.ppt》由会员分享,可在线阅读,更多相关《Java设计用户注册界面.ppt(23页珍藏版)》请在金锄头文库上搜索。

1、任务任务9 9设计用户注册界面设计用户注册界面学习情境二学习情境二学习情境二学习情境二( ( ( (考试系统单机版考试系统单机版考试系统单机版考试系统单机版) ) ) )学习目标学习目标l掌握掌握JComboBox、JCheckBoxl、JRadioButton组件的组件的创建及创建及ItemEvent事件处理。事件处理。l掌握掌握JList组件的创建及组件的创建及ListSelectionEvent事件的处理。事件的处理。l 熟悉网格包布局管理器、盒式布局的使用及其多种布局方熟悉网格包布局管理器、盒式布局的使用及其多种布局方式的综合应用式的综合应用。9.1 任务描述任务描述9.2 技术要点技

2、术要点l 选择性组件选择性组件 l 选择事件选择事件 l 复杂布局管理器复杂布局管理器 选择性组件选择性组件组合框(组合框(JComboBox类)类) 选择性组件选择性组件列表框(列表框(JList类)类)选择性组件选择性组件单选按钮(单选按钮(JRadioButton类)类) 选择性组件选择性组件复选框(复选框(JCheckbox类)类) 选择事件选择事件ItemEvent类类 举例举例 ItemeventDemo.java 1 import java.awt.*;2 import java.awt.event.*;3 import javax.swing.*;4 public class

3、ItemeventDemo extends JFrame implements ItemListener,ActionListener5 JRadioButton opt1;6 JRadioButton opt2;7 ButtonGroup btg;8 JTextArea ta;9 JComboBox comb;10 JLabel sex,city;11 public ItemeventDemo(String title)12 super(title);13 setLayout(new FlowLayout(FlowLayout.LEFT);14 sex=new JLabel(性性 别别: )

4、;15 city=new JLabel( 籍籍 贯贯:);16 opt1=new JRadioButton( 男男 );17 opt2=new JRadioButton( 女女 );18 btg=new ButtonGroup();19 btg.add(opt1);20 btg.add(opt2);21 opt1.addItemListener(this); 22 opt2.addItemListener(this);23 ta=new JTextArea (8,35);24 comb=new JComboBox();25 comb.addItem(北北 京京);26 comb.addItem

5、(上上 海海);27 comb.addItem(南南 京京);28 comb.addItem(广广 州州);29 comb.addItem(成成 都都);30 comb.addItem(昆昆 明明);31 comb.addItemListener(this);32 comb.addActionListener(this);33 getContentPane().add(sex);34 getContentPane().add(opt1);35 getContentPane().add(opt2);36 getContentPane().add(city);37 getContentPane()

6、.add(comb);38 getContentPane().add(ta);39 setTitle(title);40 setSize(300,250);41 setVisible(true);42 举例举例 ItemeventDemo.javaItemeventDemo.java(续)(续)举例举例 ItemeventDemo.java(续)(续)43 public static void main(String args)44 new ItemeventDemo(Itemevent Demo);45 46 / ItemEvent事件发生时的处理操作事件发生时的处理操作47 public

7、void itemStateChanged(ItemEvent e) 48 String str;49 if(e.getSource()=opt1) / 如果是如果是opt1被选择被选择50 ta.append(n性性 别:别:+男男);51 else if(e.getSource()=opt2) / 如果如果opt2被选择被选择52 ta.append(n性性 别:别:+女女); 53 if(e.getSource()=comb)54 str=comb.getSelectedItem().toString();55 ta.append(n籍籍 贯贯:+str+ =ItemEvent事件事件

8、);56 57 58 public void actionPerformed(ActionEvent e) 59 String str;60 if(e.getSource()=comb)61 str=comb.getSelectedItem().toString();62 ta.append(n籍籍 贯贯:+str+ =ActionEvent事件事件 );63 64 65 运行效果运行效果举例举例CheckBoxDemo .java1 import java.awt.*;2 import java.awt.event.*;3 import javax.swing.*;4 public clas

9、s CheckBoxDemo extends JFrame implements ItemListener5 private JTextField field;6 private JCheckBox bold, italic;7 private int valBold = Font.PLAIN;8 private int valItalic = Font.PLAIN;9 public CheckBoxDemo()10 super( JCheckBox Demo );11 Container container = getContentPane();12 container.setLayout(

10、 new FlowLayout() );13 field = new JTextField( 2008,北京欢迎您,北京欢迎您!, 20 );14 field.setFont( new Font( 隶书隶书, Font.PLAIN, 14 ) );15 container.add(field ); 16 bold = new JCheckBox( Bold );17 container.add( bold ); 18 italic = new JCheckBox( Italic );19 container.add( italic );20 bold.addItemListener(this)

11、; 21 italic.addItemListener( this ); 22 setSize( 280, 100 );23 setVisible( true );24 25 public void itemStateChanged(ItemEvent event)26 if ( event.getSource() = bold )27 valBold = bold.isSelected() ? Font.BOLD : Font.PLAIN; 28 if ( event.getSource() = italic )29 valItalic = italic.isSelected() ? Fon

12、t.ITALIC : Font.PLAIN;30 field.setFont( new Font( 隶书隶书, valBold + valItalic, 14 ) );31 32 public static void main(String args) 33 new CheckBoxDemo(); 34 35 选择事件选择事件 ListSelectionEvent类类 l首先必须声明实现监听者对象的类接口首先必须声明实现监听者对象的类接口ListSelectionListenerListSelectionListener,并通过,并通过JListJList类的类的addListSelectio

13、nListeneraddListSelectionListener( )( )方法注册文本框的监听者对象,方法注册文本框的监听者对象,l在在ListSelectionListenerListSelectionListener接口的接口的valueChanged valueChanged (ListSelectionEvent e)(ListSelectionEvent e)方法体中写入有关代码,就可以方法体中写入有关代码,就可以响应响应ListSelectionEventListSelectionEvent事件。事件。例例9-3 JListDemo.java1 import java.awt.

14、*;2 import java.awt.event.*;3 import javax.swing.*;4 import javax.swing.event.*;5 public class JListDemo extends JFrame implements ListSelectionListener6 JList list = null;7 JLabel label = null;8 String s = 宝马宝马,奔驰奔驰,奥迪奥迪,本田本田,皇冠皇冠,福特福特,现代现代; 9 public JListDemo()10 JFrame f = new JFrame(JList Demo);

15、11 Container contentPane = f.getContentPane();12 contentPane.setLayout(new BorderLayout(0,15);13 label = new JLabel( );14 list = new JList(s);15 list.setVisibleRowCount(5);16 list.setBorder(BorderFactory.createTitledBorder(汽车品牌:汽车品牌:);17 list.addListSelectionListener(this); 18 contentPane.add(label,

16、BorderLayout.NORTH);19 contentPane.add(new JScrollPane(list),BorderLayout.CENTER);20 f.setSize(300,200);21 f.setVisible(true); 22 23 public static void main(String args)24 new JListDemo();25 26 public void valueChanged(ListSelectionEvent e)27 int tmp = 0;28 String stmp = 您喜欢的汽车品牌有您喜欢的汽车品牌有: ;29 int

17、index = list.getSelectedIndices();30 for(int i=0; i index.length ; i+)31 tmp = indexi;32 stmp = stmp+stmp+ ;33 34 label.setText(stmp);35 36 运行效果运行效果 复杂布局管理器复杂布局管理器 网格包布局(网格包布局(GridBagLayout类)类) 举例举例 GridBagLayoutDemo.java 1 import java.awt.*;2 import javax.swing.*;3 public class GridBagLayoutDemo ex

18、tends JFrame 4 protected void addbutton(String name,GridBagLayout gridbag,5 GridBagConstraints c) 6 JButton button = new JButton(name);7 gridbag.setConstraints(button, c);8 getContentPane().add(button);9 10 public GridBagLayoutDemo()11 GridBagLayout gridbag = new GridBagLayout();12 GridBagConstraint

19、s c = new GridBagConstraints();13 setFont(new Font(SansSerif, Font.PLAIN, 14);14 setLayout(gridbag);15 c.fill = GridBagConstraints.BOTH;16 c.weightx = 1.0;17 addbutton(Button1, gridbag, c);18 addbutton(Button2, gridbag, c);19 addbutton(Button3, gridbag, c);20 c.gridwidth = GridBagConstraints.REMAIND

20、ER; /最后一个组件最后一个组件21 addbutton(Button4, gridbag, c);22 c.weightx = 0.0; /恢复默认值恢复默认值44 23 addbutton(Button5, gridbag, c); 24 c.gridwidth = GridBagConstraints.RELATIVE; /倒数第二个组件倒数第二个组件25 addbutton(Button6, gridbag, c);26 c.gridwidth = GridBagConstraints.REMAINDER; /最后一个组件最后一个组件27 addbutton(Button7, gri

21、dbag, c);28 c.gridwidth = 1; /恢复默认值恢复默认值29 c.gridheight = 2; /占据两行占据两行30 c.weighty = 1.0;31 addbutton(Button8, gridbag, c);32 c.weighty = 0.0; /恢复默认值恢复默认值33 c.gridwidth = GridBagConstraints.REMAINDER; /最后一个组件最后一个组件34 c.gridheight = 1; /恢复默认值恢复默认值35 addbutton(Button9, gridbag, c);36 addbutton(Button1

22、0, gridbag, c);37 38 public static void main(String args) 39 GridBagLayoutDemo window = new GridBagLayoutDemo();40 window.setTitle(GridBagLayout Demo);41 window.pack();42 window.setVisible(true);43 复杂布局管理器复杂布局管理器 盒式布局(盒式布局(BoxLayout类)类) 3种隐藏的组件做间隔:种隐藏的组件做间隔:lStrut(支柱支柱):用来在组件之间插入固定的空间。:用来在组件之间插入固定的空

23、间。lGlue(胶水胶水):用来控制一个框布局内额外的空间。:用来控制一个框布局内额外的空间。lRidid area(硬区域硬区域):用来生成一个固定大小的区域。:用来生成一个固定大小的区域。 举例举例 BoxLayOutDemo.java1 import java.awt.*;2 import javax.swing.*;3 public class BoxLayOutDemo 4 public static void main(String args) 5 MyFrame f=new MyFrame();6 f.setVisible(true);7 8 9 class MyFrame ex

24、tends JFrame10 public MyFrame()11 super(BoxLayout DEMO );12 final int NUM=2;13 setBounds(500,350,300,200);14 Container c =getContentPane();15 c.setLayout(new BorderLayout(20,20); /设置边框布局设置边框布局16 Box boxes = new Box4; /设置设置盒式布局盒式布局17 boxes0=Box.createHorizontalBox(); 18 boxes1=Box.createVerticalBox()

25、;19 boxes3=Box.createHorizontalBox();20 boxes2=Box.createVerticalBox();21 boxes0.add(Box.createHorizontalGlue();22 boxes1.add(Box.createVerticalGlue();23 boxes2.add(Box.createVerticalStrut(20);24 boxes3.add(Box.createHorizontalStrut(30);25 for(int i=0;iNUM;i+)26 boxes0.add(new JButton(boxes0:+i);27

26、for (int i=0;iNUM;i+)28 boxes1.add(new JButton(boxes1:+i);29 for (int i=0;iNUM;i+)30 boxes2.add(new JButton(boxes2:+i);31 for (int i=0;iNUM;i+)32 boxes3.add(new JButton(boxes3:+i);33 c.add(boxes0,BorderLayout.NORTH);34 c.add(boxes1,BorderLayout.WEST); 35 c.add(boxes2,BorderLayout.EAST);36 c.add(boxes3,BorderLayout.SOUTH); 37 38 运行效果运行效果9.3 任务实施任务实施

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号