即使你做出一個托盤,窗口最小化以后也不會自動隱藏的。需要在你的JFrame或者Frame上注冊一個WindowListener,監(jiān)聽最小化事件,并在事件響應(yīng)方法中將窗口setVisible(false)
創(chuàng)新互聯(lián)建站于2013年開始,先為三河等服務(wù)建站,三河等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為三河企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
幾年沒有碰swing了,給你詳細注釋了。仔細看。希望對你有所幫助。
import java.awt.*;//java抽象窗口工具包
import java.awt.event.*;//java抽象窗口工具包組件所激發(fā)的各類事件的接口和類
public class Test5{//類名
Frame f;//定義一個Frame窗體
TextArea center;//文本域
Label la1,la2,la3;//三個標簽
Panel east,south,north;//三塊面板
Button b1,b2,b3,b4;//四個按鈕
Choice l1;//下拉單選框
TextField t1;//文本域
// textfield只有一行可寫
// textarea是一個區(qū)域,可以有很多行
public static void main(String[] args){//主函數(shù),程序入口
Test mb = new Test();
mb.go();//調(diào)用go方法,初始化界面
}
private void go(){
f = new Frame("留言版程序");//標題
f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent evt){
f.setVisible(false);
System.exit(0);
//System.exit(0) 0--正常結(jié)束程序 1--異常關(guān)閉程序
}
});
f.setBounds(0,0,600,400);//布局大小
f.setLayout(new BorderLayout());//顯示方式
f.setResizable(false);
//下面都將控件按鈕初始化,你懂得
north = new Panel();
south = new Panel();
east = new Panel();
center = new TextArea("留言內(nèi)容:");
center.setEditable(false);
b1 = new Button("清屏");
b2 = new Button("至頂");
b3 = new Button("至尾");
la1 = new Label("留言版");
la2 = new Label("你");
la3 = new Label(" 地說:");
t1 = new TextField(20);
b4 = new Button("提交");
l1 =new Choice();
l1.add("微笑 ");
l1.add("生氣 ");
l1.add("傷心 ");
f.add(BorderLayout.NORTH,north);//布局
f.add(BorderLayout.SOUTH,south);//布局
f.add(BorderLayout.EAST,east);//布局
f.add(BorderLayout.CENTER,center);//布局
north.add(BorderLayout.CENTER,la1);
south.add(la2);//把東西加到面板上
south.add(l1);
south.add(la3);
south.add(t1);//把東西加到面板上
south.add(b4);
east.setLayout(new GridLayout(9,0,1,10));
east.add(b1);
east.add(b2);
east.add(b3);
f.setVisible(true);//可視化
b4.addActionListener(new ActionListener(){//點擊提交按鈕產(chǎn)生事件
public void actionPerformed(ActionEvent e){
String text1,text2;
text1 = l1.getSelectedItem();
text2 = t1.getText();
t1.setText(null);
if(t1.getText() != ""){//將下拉單選框的內(nèi)容和你輸入在文本框的內(nèi)容顯示在中間面板上
center.append("\n");
center.append(text1);
center.append(text2);
}
}
});
b1.addActionListener(new ActionListener(){//清屏按鈕事件,只留下中間面板顯示:“留言內(nèi)容:”,其余清楚
public void actionPerformed(ActionEvent e){
center.setText("留言內(nèi)容:");
}
});
b2.addActionListener(new ActionListener(){//至頂按鈕事件,光標焦點至頂
public void actionPerformed(ActionEvent e){
center.requestFocusInWindow();
center.setCaretPosition(8);
}
});
b3.addActionListener(new ActionListener(){//至尾按鈕事件,光標焦點至尾
public void actionPerformed(ActionEvent e){
center.requestFocusInWindow();
center.setCaretPosition(center.getText().length());
}
});
}
}
package com.zpp;public class Charge {
public static void main(String [] args) {
if(args.length ==0) {
System.out.println("parameter error!");
System.out.println("java com.zpp.Charge [int]");
return;
}
int min = Integer.parseInt(args[0]);
double money = 0.0;
if (min = 0) {
money =0.0;
System.out.println("not money");
} else if (min = 60) {
money = 2.0;
} else {
money = 2.0 + (min - 60) * 0.01;
}
System.out.println("please pay: " + money);
}
} 編譯:javac -d . Charge.java運行:java com.zpp.Charge 111