?? 第十三章例子.txt
字號:
//13-例子1
import java.applet.*;
import java.awt.*;
class Mypanel1 extends Panel //擴(kuò)展Panel類。
{ Checkbox box1,box2,box3;
Mypanel1()
{ box1=new Checkbox("音樂");
box2=new Checkbox("體育");
Box3=new Checkbox("吹牛");
add(box1);add(box2);add(box3);
}
}
class Mypanel2 extends Panel
{ Checkbox box1,box2,box3;
Mypanel2()
{ box1=new Checkbox("讀書");box2=new Checkbox("電腦"); box3=new Checkbox("電影");
add(box1);add(box2);add(box3);
}
}
public class Example13_1 extends Applet
{ Mypanel1 panel1;Mypanel2 panel2;
public void init()
{ setLayout(new GridLayout(2,2));
panel1=new Mypanel1(); panel2=new Mypanel2();
add(panel1);add(new Label( ));add(new Label());add(panel2);
}
}
//13-例子2
import java.applet.*;
import java.awt.*;
class Mypanel1 extends Panel
{ Checkbox box1,box2,box3;CheckboxGroup sex;
Mypanel1()
{ sex=new CheckboxGroup();
box1=new Checkbox("男",false,sex);
box2=new Checkbox("女",false,sex);
add(box1);add(box2);
}
}
class Mypanel2 extends Panel //擴(kuò)展Panel類
{ Checkbox box1,box2,box3,box4;CheckboxGroup age;
GridLayout net;
Mypanel2()
{ net=new GridLayout(2,2);
setLayout(net);
age=new CheckboxGroup();
box1=new Checkbox("學(xué)齡前",false,age);
box2=new Checkbox("兒童",false,age);
box3=new Checkbox("青少年",false,age);
box4=new Checkbox("成年",false,age);
add(box1);add(box2);add(box3);add(box4);
}
}
public class Example13_2 extends Applet
{ Mypanel1 panel1;Mypanel2 panel2;
public void init()
{ setLayout(new GridLayout(2,2));
panel1=new Mypanel1();
panel2=new Mypanel2();
add(panel1);add(new Label("sex只能選一" ));
add(new Label("年齡只能選一"));add(panel2);
}
}
//13-例子3
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
class Tompanel1 extends Panel
{ Checkbox box1,box2,box3;
CheckboxGroup one;
Tompanel1()
{ setLayout(new GridLayout(1,3));
one=new CheckboxGroup();
box1=new Checkbox("北京牌電視",false,one);
box2=new Checkbox("上海牌電視",false,one);
box3=new Checkbox("大連牌電視",false,one);
add(box1);add(box2);add(box3);
}
}
class Tompanel2 extends Panel //擴(kuò)展Panel類
{ Button button1,button2,button3;
Tompanel2() //構(gòu)造方法,當(dāng)創(chuàng)建面板對象時(shí),面板被初始化為:有3個(gè)按鈕.
{ setLayout(new GridLayout(1,3)); //并且布局為GridLayout(1,3)
button1=new Button("購買1臺(tái)");
button2=new Button("購買2臺(tái)");
button3=new Button("購買3臺(tái)");
add(button1);add(button2);add(button3);
}
}
public class Example13_3 extends Applet implements ItemListener,ActionListener
{ Tompanel1 panel1;Tompanel2 panel2;
Label label1,label2; TextArea text1,text2;
GridLayout net;
public void init()
{ net=new GridLayout(3,2);
setLayout(net);
panel1=new Tompanel1(); panel2=new Tompanel2();
label1=new Label("產(chǎn)品介紹",Label.CENTER);
label2=new Label("產(chǎn)品價(jià)格",Label.CENTER);
text1=new TextArea();text2=new TextArea();
add(label1);add(label2);
add(panel1);add(panel2);
add(text1);add(text2);
panel1.box1.addItemListener(this);
panel1.box2.addItemListener(this);
panel1.box3.addItemListener(this);
panel2.button1.addActionListener(this);
panel2.button2.addActionListener(this);
panel2.button3.addActionListener(this);
}
public void itemStateChanged(ItemEvent e)
{ if(e.getItemSelectable()==panel1.box1)
{ text1.setText("北京生產(chǎn)的");
}
else if(e.getItemSelectable()==panel1.box2)
{text1.setText("上海生產(chǎn)的唄");
}
else if(e.getItemSelectable()==panel1.box3)
{text1.setText("大連生產(chǎn)的嘛");
}
}
public void actionPerformed(ActionEvent e)
{ if(e.getSource()==panel2.button1)
{ text2.setText("北京:1000元.上海: 1200元.大連:1100元");
}
else if(e.getSource()==panel2.button2)
{ text2.setText("北京:900元/臺(tái).上海: 1100元/臺(tái).大連:1100元/臺(tái)");
}
else if(e.getSource()==panel2.button3)
{ text2.setText("北京:800元/臺(tái).上海: 1000元/臺(tái).大連:1000元/臺(tái)");
}
}
}
//13-例子4
import java.applet.*;import java.awt.*;import java.awt.event.*;
class Sunpanel extends Panel
{ Checkbox box1,box2;
Sunpanel()
{ setLayout(new GridLayout(1,2)); //布局為GridLayout(1,2)
box1=new Checkbox("音樂"); box2=new Checkbox("體育");
add(box1);add(box2);
}
}
public class Example13_4 extends Applet implements ItemListener
{ Sunpanel panel;
Label label; TextArea text; GridLayout net;
public void init()
{ net=new GridLayout(3,1); setLayout(net);
panel=new Sunpanel();
label=new Label("您的愛好",Label.CENTER);
text=new TextArea();
add(label); add(panel); add(text);
panel.box1.addItemListener(this); panel.box2.addItemListener(this);
}
public void itemStateChanged(ItemEvent e)
{if((e.getItemSelectable()==panel.box1)&&(panel.box1.getState()==true))
{ text.setText("喜歡什么歌曲?");
}
else if((e.getItemSelectable()==panel.box2)&&(panel.box2.getState()==false))
{text.setText("為什么不喜歡體育");
}
}
}
//13-例子5
import java.applet.*;import java.awt.*;
import java.awt.event.*;
import java.util.StringTokenizer;
public class Example13_5 extends Applet implements ActionListener
{Label 候名字=new Label("首先輸入候選人的名字(人數(shù)不超過10,名字之間用逗號分隔):"),
統(tǒng)計(jì)選票=new Label("用下面的選擇框統(tǒng)計(jì)選票:",Label.CENTER),
結(jié)果=new Label("選舉結(jié)果:");
Button 確認(rèn)=new Button("確認(rèn)"),取消=new Button("取消"),
確定=new Button("確定"),刷新=new Button("刷新"),排序=new Button("排序");
TextField name=new TextField(48);
TextField piao_show=new TextField(18);
Checkbox checkbox[]=new Checkbox[10];
TextField get_piao[]=new TextField[10];;
int count[]=new int[10],totalpiao=0,people_number=0;
Panel p2_1=new Panel();
public void init()
{setLayout(new GridLayout(3,1));
Panel p1=new Panel(), //添加到小程序上部的面板和添加到該面板中的面板。
p1_1=new Panel(),p1_2=new Panel(),p1_3=new Panel();
p1.setLayout(new BorderLayout());
p1_1.add(候名字);p1_2.add(name);
p1_3.add(確認(rèn));p1_3.add(取消);p1_3.add(統(tǒng)計(jì)選票);
p1.add(p1_1,"North");p1.add(p1_2,"Center");p1.add(p1_3,"South");
Panel p2=new Panel(), //添加到小程序中間的面板p2,它里面的一個(gè)面板p2_1,
//將用來添加代表候選人的單選按鈕。
p2_2=new Panel();
p2.setLayout(new BorderLayout());
p2_1.setLayout(new GridLayout(2,5));
p2_2.add(確定); p2_2.add(刷新); p2_2.add(排序);
p2.add(p2_1,"Center");p2.add(p2_2,"South");
for(int i=0;i<=9;i++)
{checkbox[i]=new Checkbox();
p2_1.add(checkbox[i]);
}
Panel p3=new Panel(), //添加到小程序底部的面板p3,及它里面的面板。
p3_1=new Panel(),p3_2=new Panel();
p3.setLayout(new BorderLayout());
p3_1.add(結(jié)果);p3_1.add(piao_show);
p3_2.setLayout(new GridLayout(10,1));
for(int i=0;i<=9;i++)
{get_piao[i]=new TextField();
p3_2.add(get_piao[i]);
}
ScrollPane scroll=new ScrollPane();
scroll.add(p3_2); //把p3_2添加到一個(gè)滾動(dòng)窗體中。
p3.add(p3_1,"North");p3.add(scroll,"Center");
add(p1);add(p2);add(p3); //小程序添加這三個(gè)面板。
確認(rèn).addActionListener(this);取消.addActionListener(this);
確定.addActionListener(this);刷新.addActionListener(this);
排序.addActionListener(this);
}
public void actionPerformed(ActionEvent e)
{ String s[]=new String[10];
if(e.getSource()==確認(rèn))
{ p2_1.removeAll();
String s_name=name.getText();
StringTokenizer fenxi=new StringTokenizer(s_name,",,");
//提取候選人的名字,名字用逗號(英文逗號或漢文逗號)分隔。
people_number=fenxi.countTokens(); //獲取候選人的個(gè)數(shù)。
int i=0;
while(fenxi.hasMoreTokens()) //用單選框代表候選人,并添加到面板p2_1。
{s[i]=fenxi.nextToken();
p2_1.add(checkbox[i]);
checkbox[i].setLabel(s[i]);
i++;
}
for(int k=0;k<people_number;k++)
{get_piao[k].setText(null);
}
}
else if(e.getSource()==取消)
{ name.setText(null);確認(rèn).setEnabled(true);
for(int k=0;k<people_number;k++)
{get_piao[k].setText(null);
}
}
else if(e.getSource()==確定) //統(tǒng)計(jì)候選人的得票數(shù)目。
{totalpiao=totalpiao+1; //記錄下統(tǒng)計(jì)的票數(shù)。
確認(rèn).setEnabled(false);
piao_show.setText("已統(tǒng)計(jì)了:"+totalpiao+"張選票");
for(int k=0;k<people_number;k++)
{if(checkbox[k].getState())
{count[k]=count[k]+1;
get_piao[k].setText(checkbox[k].getLabel()+" 的得票數(shù):"+count[k]);
}
else
{get_piao[k].setText(checkbox[k].getLabel()+" 的得票數(shù):"+count[k]);
}
}
}
else if(e.getSource()==排序) //對選舉人按得票數(shù),從大到小排序。
{for(int i=0;i<people_number;i++)
{ for(int j=i+1;j<people_number;j++)
{if(count[j]>count[i])
{ String str_temp=get_piao[i].getText();
get_piao[i].setText(get_piao[j].getText());
get_piao[j].setText(str_temp);
int k=count[i];
count[i]=count[j];
count[j]=k;
}
}
p2_1.removeAll();排序.setEnabled(false);
確定.setEnabled(false);
}
}
else if(e.getSource()==刷新)
{totalpiao=0;piao_show.setText("已統(tǒng)計(jì)了:"+totalpiao+"張選票");
name.setText(null);確認(rèn).setEnabled(true);
確定.setEnabled(true);排序.setEnabled(true);
for(int i=0;i<people_number;i++)
{ count[i]=0; get_piao[i].setText(null);p2_1.removeAll();
}
}
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -