1. java 用圖形化界面編寫一個猜數游戲
效果圖
importjavax.swing.*;
importjavax.swing.border.*;
importjava.awt.*;
importjava.awt.event.*;
{
privateJPanelcontentPane;
privateintnum;
;
privatefinalJLabellabel;
publicstaticvoidmain(String[]args){
EventQueue.invokeLater(newRunnable(){
publicvoidrun(){
try{
GuessNumFrameframe=newGuessNumFrame();
frame.setVisible(true);//窗口可見
}catch(Exceptione){
e.printStackTrace();
}
}
});
}
publicGuessNumFrame(){
setTitle("猜數字");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(360,160);//窗口大小
setLocationRelativeTo(null);//居中
contentPane=newJPanel();
contentPane.setBorder(newEmptyBorder(5,5,5,5));
contentPane.setLayout(newBorderLayout(0,0));
setContentPane(contentPane);
JPanelpanel_1=newJPanel();
contentPane.add(panel_1,BorderLayout.CENTER);
panel_1.setLayout(newGridLayout(3,1,0,0));
JPanelpanel=newJPanel();
panel_1.add(panel);
JButtonjbNum=newJButton("得到一個隨機數");
panel.add(jbNum);
JPanelpanel_2=newJPanel();
panel_1.add(panel_2);
label=newJLabel("");
label.setOpaque(true);
label.setBackground(Color.CYAN);
panel_2.add(label);
JPanelpanel_3=newJPanel();
panel_1.add(panel_3);
jtfInput=newJTextField();
panel_3.add(jtfInput);
jtfInput.setColumns(10);
JButtonjbOk=newJButton("確定");
panel_3.add(jbOk);
jbNum.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente){
num=(int)(Math.random()*10);//生成隨即數
label.setText("隨機數已經生成范圍0~9");
System.out.println(num);
}
});
jbOk.addActionListener(newActionListener(){
publicvoidactionPerformed(ActionEvente){
intx;
try{
x=Integer.parseInt(jtfInput.getText());//取得輸入框的數字進行比較
}catch(Exceptione1){
JOptionPane.showMessageDialog(null,"sorry,輸入錯誤!");
return;
}
if(x==num){
JOptionPane.showMessageDialog(null,"厲害,猜對了~!");
}elseif(x<num){
JOptionPane.showMessageDialog(null,"你猜小了","提示",JOptionPane.WARNING_MESSAGE);
}elseif(x>num){
JOptionPane.showMessageDialog(null,"你猜大了","提示",JOptionPane.WARNING_MESSAGE);
}
}
});
}
}
2. 用java圖形用戶界面實現: 編寫一個日歷程序,能實現顯示日歷等簡單功能。 (運行後有窗體出現的那
import javax.swing.JOptionPane;
public class NewClass{
public static void main(String[] args){
int year,month;
Calender cal=new Calender(2008,10);
cal.showCalender();
year=Integer.parseInt(JOptionPane.showInputDialog("Year:"));
month=Integer.parseInt(JOptionPane.showInputDialog("Month:"));
cal.setYear(year);
cal.setMonth(month);
cal.showCalender();
}
}
class Calender{
private int year,month;
public Calender(){
year=0;
month=1;
}
public Calender(int year){
this.year=year;
month=1;
}
public Calender(int year,int month){
this.year=year;
if(month>12)
this.month=month%12;
else
this.month=month;
}
public void setYear(int year){
this.year=year;
}
public void setMonth(int month){
if(month>12)
this.month=month%12;
else
this.month=month;
}
private int dayOfMonth(){
int days=0;
switch(month){
case 1:days=31;break;
case 2:{
if(((year%4==0)&&(year%100!=0))||(year%400==0))
days=29;
else
days=28;
break;
}
case 3:days=31;break;
case 4:days=30;break;
case 5:days=31;break;
case 6:days=30;break;
case 7:days=31;break;
case 8:days=31;break;
case 9:days=30;break;
case 10:days=31;break;
case 11:days=30;break;
case 12:days=31;break;
default:
days=0;
}
return days;
}
private int dayOfWeek(){
int Y=year;
int M=month;
int D=1;
int A;
A = Y>0?(5+(Y+1)+(Y-1)/4-(Y-1)/100+(Y-1)/400)%7:(5+Y+Y/4-Y/100+Y/400)%7;
A = M>2?(A+2*(M+1)+3*(M+1)/5)%7:(A+2*(M+2)+3*(M+2)/5)%7;
if (((Y%4 == 0 && Y%100 != 0)|| Y%400 == 0) && M>2) A =(A+1)%7;
A=(A+D)%7;
return A;
}
public void showCalender(){
String str=new String();
str=" ";
str+=year+"年"+month+"月";
str+="\n\n";
str+="日 一 二 三 四 五 六\n";
int week=this.dayOfWeek();
for(int i=0,j=1;i<7;i++){
if(i<week)
str+=" ";
else{
str+=" "+j+" ";
j++;
}
}
str+="\n";
end:
for(int i=7-week+1;i<=this.dayOfMonth();){
for(int j=0;j<7;j++){
if(i<10)
str+=" "+i+" ";
else
str+=i+" ";
i++;
if(i>this.dayOfMonth())
break end;
}
str+="\n";
}
JOptionPane.showMessageDialog(null,str);
}
}
3. java里邊圖形界面編程
修改成這樣:
import java.awt.*;
import javax.swing.*;
public class test2 extends JFrame
{
public static void main(String[] args)
{
test2 a = new test2();
}
public test2()
{
JButton a1 = new JButton("東");
JButton a2 = new JButton("西");
JButton a3 = new JButton("南");
JButton a4 = new JButton("北");
JButton a5 = new JButton("中");
this.add(a1, BorderLayout.EAST);
this.add(a2, BorderLayout.WEST);
this.add(a3, BorderLayout.SOUTH);
this.add(a4, BorderLayout.NORTH);
this.add(a5, BorderLayout.CENTER);
this.setTitle("邊界布局BorderLayout");
this.setSize(500, 400);
this.setLocation(800, 600);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
}