开发初学经典案例.docx
- 文档编号:4621728
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:14
- 大小:18.75KB
开发初学经典案例.docx
《开发初学经典案例.docx》由会员分享,可在线阅读,更多相关《开发初学经典案例.docx(14页珍藏版)》请在冰豆网上搜索。
开发初学经典案例
Java实验三实验报告
利用Applet画图:
importjava.applet.Applet;
importjava.awt.Graphics;
importjava.awt.Polygon;
publicclassApplet2extendsApplet{
publicvoidpaint(Graphicsg)
{
intxCenter=60;
intyCenter=100;
intradius=30;
Polygonpolygon=newPolygon();
polygon.addPoint(xCenter+radius,yCenter);
polygon.addPoint((int)(xCenter+radius*Math.cos(2*Math.PI/6)),(int)(yCenter+radius*Math.sin(2*Math.PI/6)));
polygon.addPoint((int)(xCenter+radius*Math.cos(2*2*Math.PI/6)),(int)(yCenter+radius*Math.sin(2*2*Math.PI/6)));
polygon.addPoint((int)(xCenter+radius*Math.cos(3*2*Math.PI/6)),(int)(yCenter+radius*Math.sin(3*2*Math.PI/6)));
polygon.addPoint((int)(xCenter+radius*Math.cos(4*2*Math.PI/6)),(int)(yCenter+radius*Math.sin(4*2*Math.PI/6)));
polygon.addPoint((int)(xCenter+radius*Math.cos(5*2*Math.PI/6)),(int)(yCenter+radius*Math.sin(5*2*Math.PI/6)));
g.drawPolygon(polygon);//画六边形
g.drawLine(5,5,50,50);//画直线
g.drawRect(60,5,40,50);//画矩形
g.drawOval(120,5,50,50);//画圆形
g.drawOval(120,65,60,40);//画椭圆
}
}
GUI:
1、编程包含一个标签和一个按钮,单击按钮时,标签的内容在“你好”和“再见”之间切换。
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
publicclassSwitchextendsJFrameimplementsActionListener{
JLabell;
JButtonb;
publicSwitch(){
l=newJLabel("你好");
b=newJButton("切换");
b.addActionListener(this);
setLayout(newFlowLayout());
add(l);
add(b);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(600,200);
setVisible(true);
}
publicvoidactionPerformed(ActionEvente){
if(l.getText().equals("你好"))
l.setText("再见");
else
l.setText("你好");
}
publicstaticvoidmain(Stringargs[]){
newSwitch();
}
}
2、编程包含一个文本框和一个文本区域,文本框内容改变时,将文本框中的内容显示在文本区域中;在文本框中按回车键时,清空文本区域的内容。
importjava.awt.BorderLayout;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjavax.swing.JTextArea;
importjavax.swing.JTextField;
importjavax.swing.WindowConstants;
importjavax.swing.event.DocumentEvent;
importjavax.swing.event.DocumentListener;
importjavax.swing.text.BadLocationException;
importjavax.swing.text.Document;
importjavax.swing.text.PlainDocument;
publicclasstext2extendsjavax.swing.JFrame{
privateJTextFieldinput;
privateJTextAreaoutput;
publicstaticvoidmain(String[]args){
text2inst=newtext2();
inst.setLocationRelativeTo(null);
inst.setVisible(true);
}
publictext2(){
super();
initGUI();
}
privatevoidinitGUI(){
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
{
input=newJTextField();
getContentPane().add(input,BorderLayout.NORTH);
input.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEventevt){
//这句话就是让文本域中显示文本框内容
output.setText("");
}
});
PlainDocumentdoc=(PlainDocument)input.getDocument();
doc.addDocumentListener(newDocumentListener(){
publicvoidchangedUpdate(DocumentEvente){
}
publicvoidinsertUpdate(DocumentEvente){
try{
//这里进行同步处理
Documentdoc=e.getDocument();
intoffset=e.getOffset();
Stringtext=doc.getText(offset,e.getLength());
Documentadoc=output.getDocument();
adoc.insertString(adoc.getLength(),text,null);
}catch(BadLocationExceptione1){
e1.printStackTrace();
}
}
publicvoidremoveUpdate(DocumentEvente){
}});
}
{
output=newJTextArea();
getContentPane().add(output,BorderLayout.CENTER);
output.setLineWrap(true);
}
pack();
setSize(400,300);
}
}
3、编程包含一个复选按钮和一个普通按钮,复选按钮选中时,普通按钮的背景色为青色,未选中时为灰色。
importjavax.swing.*;
importjava.awt.*;
importjava.awt.event.*;
publicclassbcolorextendsJFrameimplementsActionListener{
JCheckBoxch;
JButtonb1;
publicbcolor()
{
setSize(400,300);
setLayout(newFlowLayout());
b1=newJButton("测试");
ch=newJCheckBox("改变颜色");
add(b1);
add(ch);
ch.addActionListener(this);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
publicvoidactionPerformed(ActionEvente){
if(e.getSource().equals(ch))
{
if(ch.isSelected())
{
b1.setBackground(Color.green);
}
else
{
b1.setBackground(Color.gray);
}
}
}
publicstaticvoidmain(Stringargs[]){
newbcolor();
}
}
4、编程包含一个单选按钮组和一个普通按钮,单选按钮组中包含三个单选,文本说明分别为“普通”、“黑体”和“斜体”。
选择文本标签为“普通”的单选按钮时,普通按钮中的文字为普通字体,选择文本标签为“黑体”的按钮时,普通按钮中的文字的字体为黑体,选择文本标签为“斜体”的单选按钮时,普通按钮中的文字的字体为斜体。
importjava.awt.Font;
importjava.awt.GridLayout;
importjavax.swing.ButtonGroup;
importjavax.swing.JFrame;
importjavax.swing.JRadioButton;
importjavax.swing.JButton;
importjava.awt.event.*;
classtest4extendsJFrame
{
JRadioButtona1,a2,a3;
JButtonqd;
test4()
{
setLayout(newGridLayout(5,1));
a1=newJRadioButton("楷体",true);
a2=newJRadioButton("黑体",true);
a3=newJRadioButton("斜体",true);
qd=newJButton("改变字体");
add(a1);
add(a2);
add(a3);
add(qd);
ButtonGroupbg=newButtonGroup();
bg.add(a1);
bg.add(a2);
bg.add(a3);
bg.add(qd);
setVisible(true);
a1.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente){
if(a1.isSelected()){
qd.setFont(newFont("楷体",Font.PLAIN,Integer.parseInt("16")));
}
}
});
a2.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente){
if(a2.isSelected()){
qd.setFont(newFont("黑体",Font.PLAIN,Integer.parseInt("16")));
}
}
});
a3.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente){
if(a3.isSelected()){
qd.setFont(newFont("斜体",Font.PLAIN,Integer.parseInt("16")));
}
}
});
}
publicstaticvoidmain(String[]args)
{
test4q=newtest4();
q.setTitle("单选");
q.setSize(300,400);
q.setLocation(300,300);
q.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
q.setVisible(true);
}
}
5、编程包含一个下拉列表和一个按钮,下拉列表中有10、14、18三个选项。
选择10时,按钮中文字的字号为10,选择14时,按钮中文字的字号为14,选择18时,按钮中文字的字号为18。
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
publicclassJComboBox8implementsItemListener{
String[]fontsize={"12","14","16","18","20","22","24","26","28"};
Fontfont=null;
JComboBoxcombo=null;
JButtonlabel=null;
publicJComboBox8(){
JFramef=newJFrame("JComboBox");
ContainercontentPane=f.getContentPane();
//contentPane.setLayout(newGridLayout(2,1));
contentPane.setLayout(newFlowLayout());
label=newJButton("改变字体");
font=newFont("SansSerif",Font.PLAIN,12);
label.setFont(font);
combo=newJComboBox(fontsize);
combo.setBorder(BorderFactory.createTitledBorder("请选择你要的文字大小:
"));
combo.addItemListener(this);
contentPane.add(label);
contentPane.add(combo);
f.pack();
f.setVisible(true);
f.setSize(200,150);
f.addWindowListener(newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){
System.exit(0);
}
});
}
publicstaticvoidmain(String[]args){
newJComboBox8();
}
publicvoiditemStateChanged(ItemEvente){//ItemListener界面只有itemStateChanged()一个方法,在此实作它。
if(e.getStateChange()==ItemEvent.SELECTED){//当用户的选择改变时,则在JLabel上会显示出目前字形大小信息.
intfontsize=0;
Stringtmp=(String)combo.getSelectedItem();
fontsize=Integer.parseInt(tmp);
font=newFont("SansSerif",Font.PLAIN,fontsize);
label.setFont(font);
label.setText("改变字体"+fontsize);
}
}
}
6、编程包含一个列表和两个标签,在第一个标签中显示列表中被双击的内容,在第二个标签中显示列表中被选中的所有选项的内容。
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
importjavax.swing.event.*;//由于ListSelectionEvent是swing的事件,不是awt的事件,因此我们必须import
//javax.swing.event.*。
publicclassJList7implementsListSelectionListener
{
JListlist=null;
JLabellabel=null;
String[]s={"美国","日本","大陆","英国","法国","意大利","澳洲","韩国"};
publicJList7()
{
JFramef=newJFrame("JList");
ContainercontentPane=f.getContentPane();
contentPane.setLayout(newBorderLayout());
label=newJLabel();
list=newJList(s);
list.setVisibleRowCount(5);
list.setBorder(BorderFactory.createTitledBorder("您最喜欢到哪个国家玩呢?
"));
list.addListSelectionListener(this);
contentPane.add(label,BorderLayout.NORTH);
contentPane.add(newJScrollPane(list),BorderLayout.CENTER);
f.pack();
f.setVisible(true);
f.addWindowListener(newWindowAdapter(){
publicvoidwindowClosing(WindowEvente){
System.exit(0);
}
});
}
publicstaticvoidmain(Stringargs[])
{
newJList7();
}
publicvoidvalueChanged(ListSelectionEvente)
{
inttmp=0;
Stringstmp="您目前选取:
";
int[]index=list.getSelectedIndices();//利用JList类所提供的getSelectedIndices()方法可得到用户所选取的所有
for(inti=0;i { tmp=index[i]; stmp=stmp+s[tmp]+""; } label.setText(stmp); } } 7、编程确定当前鼠标的位置坐标。 importjava.awt.*; importjava.awt.event.*; importjavax.swing.*; classFrame5extendsJFrameimplementsMouseMotionListener {JLabellb; Frame5(Strings){ super(s); setBounds(100,100,400,300); lb=newJLabel("当前鼠标的位置是: "); add(lb); addMouseMotionListener(this); setVisible(true); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } publicvoidmouseDragged(MouseEvente){} publicvoidmouseMoved(MouseEvente){ if(e.getSource()==this){ lb.setText("当前鼠标位置是: ("+e.getX()+","+e.getY()+")"); } } } publicclassTest45{ publicstaticvoidmain(String[]args) { Frame5a=newFrame5("确定鼠标位置"); } } 8、编程创建一个Frame,实现窗口的监听器接口。 importjava.awt.*; importjava.awt.event.*; importjavax.swing.*; classFrame6extendsJFrame { Frame6(Strings){ super(s); setBounds(100,100,400,300); addWindowListener(newWindowAdapter(){ publicvoidwindowClosing(WindowEvente){ System.exit(0); } }); setVisible(true); } } publicclassA{ publicstaticvoidmain(String[]args) { Frame6a=newFrame6("窗体监听的实现"); } } 9、编程使用BorderLayout布局方式放置5个按钮 importjava.awt.*; importjavax.swing.*; classFrame7extendsJFrame{ JButtonb1,b2,b3,b4,b5; Frame7(Strings){ super(s); setBounds(100,100,400,300); b1=newJButton("按钮1"); add(b1,BorderLayout.EAST); b1=newJButton("按钮2"); add(b1,BorderLayout.WEST); b1=newJButton("按钮3"); add(b1,BorderLayout.SOUTH); b1=newJButton("按钮4"); add(b1,Border
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 开发 初学 经典 案例
![提示](https://static.bdocx.com/images/bang_tan.gif)