实验六+图形界面.docx

上传人:b****8 文档编号:10922855 上传时间:2023-02-23 格式:DOCX 页数:9 大小:31.29KB
下载 相关 举报
实验六+图形界面.docx_第1页
第1页 / 共9页
实验六+图形界面.docx_第2页
第2页 / 共9页
实验六+图形界面.docx_第3页
第3页 / 共9页
实验六+图形界面.docx_第4页
第4页 / 共9页
实验六+图形界面.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

实验六+图形界面.docx

《实验六+图形界面.docx》由会员分享,可在线阅读,更多相关《实验六+图形界面.docx(9页珍藏版)》请在冰豆网上搜索。

实验六+图形界面.docx

实验六+图形界面

实验六+图形界面

实验六图形界面

实验日期:

2016年6月12日班级:

软件1401

学号(后四位):

__0127_______姓名:

_程瑞强_______成绩:

成绩:

一.实验目的

1.掌握图形用户界面的设计方法

2.掌握常用的构建用户界面的组件的用法

3.掌握事件操作的原理

4.能够对所设计的用户界面进行事件处理

5.能够应用运算符解决实际小问题

6.进一步熟悉Java的面向对象的编程思想

二.实验题目(前2题任选1题,第3,4题任选1题)

1.采用图形界面实现两个内容的交换,图形界面如下图1所示所示:

图1内容交换

代码如下:

packageTestChange;

importjava.awt.BorderLayout;

importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;

importjavax.swing.JButton;

importjavax.swing.JFrame;

importjavax.swing.JPanel;

importjavax.swing.JTextField;

publicclassTestChangeextendsJFrameimplementsActionListener{

privatestaticfinallongserialVersionUID=-3684503858019589006L;

JPanelpanel;

JTextFieldtt1;

JTextFieldtt2;

JButtonbutton;

publicTestChange(){

this.setTitle("TestChange");

this.setSize(355,85);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

panel=newJPanel();

tt1=newJTextField(10);

tt2=newJTextField(10);

button=newJButton("Change");

button.addActionListener(this);

panel.add(tt1);

panel.add(tt2);

panel.add(button);

this.add(panel,BorderLayout.NORTH);

this.setResizable(false);

this.setVisible(true);

}

publicstaticvoidmain(String[]str){

newTestChange();

}

@Override

publicvoidactionPerformed(ActionEvente){

if(e.getSource()==button)

{

Stringtemp=tt1.getText();

tt1.setText(tt2.getText());

tt2.setText(temp);

}

}

}

2.采用图形界面设计如下图2所示的界面。

并能够实现当点击“+”按钮时,标签给出点击次数,如图3所示

图2开始界面

图3点击“+”按钮后的界面

3.教材P220页,第3题,创建一个会员注册窗体,要求使用上JCheckBox,JRadioButton,JTextFiled,JTextArea等组件,并将用户的注册信息显示到文本区中。

代码如下:

packagejava实验六;

importjava.*;

importjavax.swing.*;

importjava.awt.event.*;

importjava.awt.*;

publicclassVipDemoextendsJFrameimplementsActionListener{

privateColorc;

privateintstyle;

privateFontf,fl;

privateJLabeljlExample,jlFontstyle,jlColor,jlname,jlid,jlphone,jlsex;

privateJButtonjbOk,jbCancel;

privateJRadioButtonrbRed,rbBlue,rbBlack,rbm,rbf;

privateButtonGroupg;

privateJCheckBoxjcbBold,jcbItalic;

privateJPaneljpFontstyle,jpColor,jpLabel,jpsex;

privateJTextFieldjtname,jtid,jtphone;

privateJTextAreajta;

publicVipDemo(){

style=Font.PLAIN;

jlExample=newJLabel("请看设置效果");

jlFontstyle=newJLabel("字形");

jlColor=newJLabel("颜色");

jlsex=newJLabel("性别");

jlname=newJLabel("名字");

jlid=newJLabel("编号");

jlphone=newJLabel("联系方式");

jbOk=newJButton("确定");

jbCancel=newJButton("取消");

rbRed=newJRadioButton("");

rbBlue=newJRadioButton("");

rbBlack=newJRadioButton("");

rbm=newJRadioButton("男");

rbf=newJRadioButton("女");

g=newButtonGroup();

jcbBold=newJCheckBox("粗体");

jcbItalic=newJCheckBox("斜体");

jpFontstyle=newJPanel();

jpColor=newJPanel();

jpLabel=newJPanel();

jpsex=newJPanel();

jtname=newJTextField();

jtid=newJTextField();

jtphone=newJTextField();

jta=newJTextArea(4,15);

}

publicvoidlaunchButtonTest(){

jta.setEditable(false);

f=jlExample.getFont();

fl=f.deriveFont(Font.PLAIN);

jlExample.setFont(fl);

rbRed.setBackground(Color.red);

rbBlue.setBackground(Color.blue);

rbBlack.setBackground(Color.black);

rbRed.addActionListener(this);

rbBlue.addActionListener(this);

rbBlack.addActionListener(this);

jcbBold.addActionListener(this);

jcbItalic.addActionListener(this);

rbm.addActionListener(this);

rbf.addActionListener(this);

jbOk.addActionListener(this);

jbCancel.addActionListener(this);

g.add(rbRed);

g.add(rbBlue);

g.add(rbBlack);

g.add(rbm);

g.add(rbf);

jpFontstyle.add(jlFontstyle);

jpFontstyle.add(jcbBold);

jpFontstyle.add(jcbItalic);

jpColor.add(jlColor);

jpColor.add(rbRed);

jpColor.add(rbBlue);

jpColor.add(rbBlack);

jpLabel.add(jlExample);

jpsex.add(rbm);

jpsex.add(rbf);

Containercp=getContentPane();

cp.setLayout(newGridLayout(7,2,5,5));

cp.add(jpFontstyle);

cp.add(jpColor);

cp.add(jpLabel);

cp.add(jpsex);

cp.add(jlname);

cp.add(jtname);

cp.add(jlid);

cp.add(jtid);

cp.add(jlphone);

cp.add(jtphone);

cp.add(jbOk);

cp.add(jbCancel);

cp.add(jta);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

pack();

setVisible(true);

}

publicvoidactionPerformed(ActionEvente){

if(rbRed.isSelected())

c=Color.red;

if(rbBlue.isSelected())

c=Color.blue;

if(rbBlack.isSelected())

c=Color.black;

jlExample.setForeground(c);

Objectsource=e.getSource();

if(source==jcbBold)

style=style^Font.BOLD;

if(source==jcbItalic)

style=style^Font.ITALIC;

jlExample.setFont(fl.deriveFont(style));

if(source==rbm)

jta.append("男\n");

if(source==rbf)

jta.append("女");

if(source==jbOk){

jta.append("姓名"+jtname.getText()+"\n");

jta.append("编号"+jtid.getText()+"\n");

jta.append("联系方式"+jtphone.getText()+"\n");

}

}

publicstaticvoidmain(String[]args){

VipDemobt=newVipDemo();

bt.setTitle("会员注册");

bt.launchButtonTest();

}

}

4.利用相应的组件编辑一个文本编辑器,参照Windows记事本,可以对字体大小、字形(粗体,斜体)、颜色进行设置,可以对内容进行添加、删除、修改,并保存文本。

说明:

(1)可以选用单选框、复选框、列表、下拉框或菜单任意一种或多种组合实现字体的设置

(2)根据自己的编程能力实现功能,可以只实现字体的设置,或者字体和内容的编辑,或者全部功能都实现。

(3)本题的目的是常用组件的使用。

III在本次实验中的问题和解决方法

本次实验中一切的设计和实现还比较理想,没遇上什么难题。

IV心得体会

通过本次实验我了解了图形用户界面的设计方法,掌握了常用的构建用户界面的组件的用法,掌握事件操作的原理,能够对所设计的用户界面进行事件处理,能够应用运算符解决实际小问题,熟悉了Java的面向对象的编程思想

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 经济学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1