?? 第十三章例子.txt
字號:
13-例子1
import java.applet.*;
import java.awt.*;
class Mypanel1 extends Panel //擴展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 //擴展Panel類
{ Checkbox box1,box2,box3,box4;CheckboxGroup age;
GridLayout net;
Mypanel2()
{ net=new GridLayout(2,2);
setLayout(net);
age=new CheckboxGroup();
box1=new Checkbox("學齡前",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 //擴展Panel類
{ Button button1,button2,button3;
Tompanel2() //構造方法,當創建面板對象時,面板被初始化為:有3個按鈕.
{ setLayout(new GridLayout(1,3)); //并且布局為GridLayout(1,3)
button1=new Button("購買1臺");
button2=new Button("購買2臺");
button3=new Button("購買3臺");
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("產品介紹",Label.CENTER);
label2=new Label("產品價格",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("北京生產的");
}
else if(e.getItemSelectable()==panel1.box2)
{text1.setText("上海生產的唄");
}
else if(e.getItemSelectable()==panel1.box3)
{text1.setText("大連生產的嘛");
}
}
public void actionPerformed(ActionEvent e)
{ if(e.getSource()==panel2.button1)
{ text2.setText("北京:1000元.上海: 1200元.大連:1100元");
}
else if(e.getSource()==panel2.button2)
{ text2.setText("北京:900元/臺.上海: 1100元/臺.大連:1100元/臺");
}
else if(e.getSource()==panel2.button3)
{ text2.setText("北京:800元/臺.上海: 1000元/臺.大連:1000元/臺");
}
}
}
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("首先輸入候選人的名字(人數不超過10,名字之間用逗號分隔):"),
統計選票=new Label("用下面的選擇框統計選票:",Label.CENTER),
結果=new Label("選舉結果:");
Button 確認=new Button("確認"),取消=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(確認);p1_3.add(取消);p1_3.add(統計選票);
p1.add(p1_1,"North");p1.add(p1_2,"Center");p1.add(p1_3,"South");
Panel p2=new Panel(), //添加到小程序中間的面板p2,它里面的一個面板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(結果);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添加到一個滾動窗體中。
p3.add(p3_1,"North");p3.add(scroll,"Center");
add(p1);add(p2);add(p3); //小程序添加這三個面板。
確認.addActionListener(this);取消.addActionListener(this);
確定.addActionListener(this);刷新.addActionListener(this);
排序.addActionListener(this);
}
public void actionPerformed(ActionEvent e)
{ String s[]=new String[10];
if(e.getSource()==確認)
{ p2_1.removeAll();
String s_name=name.getText();
StringTokenizer fenxi=new StringTokenizer(s_name,",,");
//提取候選人的名字,名字用逗號(英文逗號或漢文逗號)分隔。
people_number=fenxi.countTokens(); //獲取候選人的個數。
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);確認.setEnabled(true);
for(int k=0;k<people_number;k++)
{get_piao[k].setText(null);
}
}
else if(e.getSource()==確定) //統計候選人的得票數目。
{totalpiao=totalpiao+1; //記錄下統計的票數。
確認.setEnabled(false);
piao_show.setText("已統計了:"+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()+" 的得票數:"+count[k]);
}
else
{get_piao[k].setText(checkbox[k].getLabel()+" 的得票數:"+count[k]);
}
}
}
else if(e.getSource()==排序) //對選舉人按得票數,從大到小排序。
{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("已統計了:"+totalpiao+"張選票");
name.setText(null);確認.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();
}
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -