資源簡介
通過JAVA運用多線程控制球的運動,通過窗口中的滑條,對球的大小和顏色進行選擇后,隨機從窗口左右兩方擇一進入,小球在遇到障礙或邊界后會折回。
代碼片段和文件信息
import?java.awt.Color;
import?java.awt.Container;
import?java.awt.Graphics;
import?java.awt.event.ActionEvent;
import?java.awt.event.ActionListener;
import?java.awt.event.WindowAdapter;
import?java.awt.event.WindowEvent;
import?java.util.Random;
import?javax.swing.JButton;
import?javax.swing.Jframe;
import?javax.swing.JLabel;
import?javax.swing.JPanel;
import?javax.swing.JSlider;
import?javax.swing.JTextField;
import?javax.swing.SwingConstants;
import?javax.swing.event.ChangeEvent;
import?javax.swing.event.ChangeListener;
public?class?rw34?{
//操作運用線程實現碰撞的球的類
public?static?void?main(String[]?args)?{
//?TODO?Auto-generated?method?stub
new?Ballframe();//實例化對象
}
}
class?Ballframe?extends?Jframe?implements?ActionListenerChangeListener{
private?static?final?long?serialVersionUID=1L;
JPanel?panel;//畫板
JPanel?preview;//預覽畫板
JSlider?red;//紅色滑塊
JSlider?blue;//藍色滑塊
JSlider?green;//綠色滑塊
JSlider?JS_SIZE;//滑塊的大小
int?x=45y=45;//方位
int?BALL_SIZE=30;//球的大小
public?Ballframe()?{
//構造方法進行初始化
super(“碰撞的球“);
panel=new?JPanel();//創建面板
panel.setBounds(20?0?450?200);//設置面板的位置及大小
panel.setBackground(Color.WHITE);//面板背景色為白色
preview=new?JPanel();?//創建預覽球的面板
preview.setBounds(350220120120);
preview.setBackground(Color.WHITE);//設置狀態欄
JTextField?status=new?JTextField(“請選擇球的顏色、大小然后單擊按鈕“);
status.setBounds(140449220);//設置狀態欄的位置以及大小
status.setEditable(false);//初始不能編輯
JLabel?redLabel=new?JLabel(“紅“);//創建紅色標簽
redLabel.setBounds(202153020);//設置紅色標簽的位置以及大小
JLabel?greenLabel=new?JLabel(“綠“);//創建綠色標簽
greenLabel.setBounds(202603020);//設置綠色標簽的位置以及大小
JLabel?blueLabel=new?JLabel(“藍“);//創建藍色標簽
blueLabel.setBounds(203053020);//設置藍色標簽的位置以及大小
JLabel?sizeLabel=new?JLabel(“大小“);//創建大小標簽
sizeLabel.setBounds(203503020);//設置大小標簽的位置以及大小
red=new?JSlider(SwingConstants.HORIZONTAL0255127);//創建紅色滑塊
red.setBounds(50?210?250?45);//設置滑塊的位置以及大小
red.putClientProperty(“JSlider.isFilled“Boolean.TRUE);//填充滑塊
red.setPaintTicks(true);//繪制勾號標記
red.setMajorTickSpacing(50);//主要的勾號標記大小
red.setMinorTickSpacing(25);//次要的勾號標記大小
red.setPaintLabels(true);//顯示主要刻度的數字標記
red.addChangeListener(this);//添加監聽者
blue=new?JSlider(SwingConstants.HORIZONTAL0255127);//創建藍色滑塊
blue.setBounds(50?300?250?45);//設置滑塊的位置以及大小
blue.putClientProperty(“JSlider.isFilled“Boolean.TRUE);//填充滑塊
blue.setPaintTicks(true);//繪制勾號標記
blue.setMajorTickSpacing(50);//主要的勾號標記大小
blue.setMinorTickSpacing(25);//次要的勾號標記大小
blue.setPaintLabels(true);//顯示主要刻度的數字標記
blue.addChangeListener(this);//添加監聽者
green=new?JSlider(SwingConstants.HORIZONTAL0255127);//創建綠色滑塊
green.setBounds(50?255?250?45);//設置滑塊的位置以及大小
green.putClientProperty(“JSlider.isFilled“Boolean.TRUE);//填充滑塊
green.setPaintTicks(true);//繪制勾號標記
green.setMajorTickSpacing(50);//主要的勾號標記大小
green.setMinorTickSpacing(25);//次要的勾號標記大小
green.setPaintLabels(true);//顯示主要刻度的數字標記
green.addChangeListe
- 上一篇:使用JAVA編制時鐘程序
- 下一篇:LocSDK_4.2.jar
評論
共有 條評論