亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

JAVA里面能做出來質點根據函數動態移動的效果嗎?

JAVA里面能做出來質點根據函數動態移動的效果嗎?

JVM
SMILET 2019-02-07 11:07:06
JAVA里面能做出來質點根據函數動態移動的效果嗎?
查看完整描述

2 回答

?
子衿沉夜

TA貢獻1828條經驗 獲得超3個贊

可以的。
解決方案如下:
/.setDefaultCloseOperation(JFrame.println(".addKeyListener(mp),希望對你有幫助。不然可以幫你構建一下代碼;/
import java.event.repaint();
}else if(e。你先參考我以前學習時做的一個簡單移動質點的程序(可直接運行)。
/import javax。
Java UI本來就是一個坐標系.*.VK_DOWN)
{
y+=5;

/.VK_RIGHT)
{
x+=5.add(mp).VK_LEFT)
{
x-=5;實現監聽
this;
}

@Override
public void keyTyped(KeyEvent e) {
/.EXIT_ON_CLOSE);調用repaint函數 來重繪界面
this;
public void paint(Graphics g)
{
super.getKeyCode()==KeyEvent:加深對事件處理機制的理解
* 鍵盤方向鍵控制小球的運動
*/.out;/.*.getKeyChar());被按下"
package JavaBase13_ActionListerner;
import java.awt;

if(e;/
}

@Override
public void keyPressed(KeyEvent e) {
/ TODO Auto-generated method stub
/
}

}

class MyPanel extends JPanel implements KeyListener
{
int x = 10; TODO Auto-generated method stub

}

@Override
public void keyReleased(KeyEvent e) {
/, 300).*; TODO Auto-generated method stub
DemoB w51 = new DemoB().paint(g), y.awt。就不知道你要的什么效果.fillOval(x.VK_UP)
{
y-=5;+e;
}
/.getKeyCode()==KeyEvent;System.setSize(300;

}
public DemoB()
{
mp = new MyPanel();
this;

this;
int y = 10;

public class DemoB extends JFrame{

MyPanel mp = null樓主你好;/
}else if(e, 10.getKeyCode()==KeyEvent;/
}else if(e, 10),將參數的值和你需要移動的質點坐標建立關系.getKeyCode()==KeyEvent!你用純JAVA做UI界面要實現動態效果就必須不斷刷新畫面.swing;

public static void main(String[] args) {
//
this;

this.setVisible(true);
g。你的函數的參數也要不斷的改變。應該就可以;*
* 功能



查看完整回答
反對 回復 2019-03-18
?
絕地無雙

TA貢獻1946條經驗 獲得超4個贊

你用純JAVA做UI界面要實現動態效果就必須不斷刷新畫面。你的函數的參數也要不斷的改變,將參數的值和你需要移動的質點坐標建立關系。應該就可以。
Java UI本來就是一個坐標系。就不知道你要的什么效果。不然可以幫你構建一下代碼。你先參考我以前學習時做的一個簡單移動質點的程序(可直接運行),希望對你有幫助。
/*
* 功能:加深對事件處理機制的理解
* 鍵盤方向鍵控制小球的運動
*/
package JavaBase13_ActionListerner;

import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class DemoB extends JFrame{

MyPanel mp = null;

public static void main(String[] args) {
// TODO Auto-generated method stub
DemoB w51 = new DemoB();

}
public DemoB()
{
mp = new MyPanel();

this.add(mp);

//實現監聽
this.addKeyListener(mp);

this.setSize(300, 300);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}

}

class MyPanel extends JPanel implements KeyListener
{
int x = 10;
int y = 10;
public void paint(Graphics g)
{
super.paint(g);
g.fillOval(x, y, 10, 10);
}

@Override
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub
//System.out.println("被按下"+e.getKeyChar());

if(e.getKeyCode()==KeyEvent.VK_DOWN)
{
y+=5;
}else if(e.getKeyCode()==KeyEvent.VK_UP)
{
y-=5;
}else if(e.getKeyCode()==KeyEvent.VK_LEFT)
{
x-=5;
}else if(e.getKeyCode()==KeyEvent.VK_RIGHT)
{
x+=5;
}
//調用repaint函數 來重繪界面
this.repaint();
}

@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub

}

@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub

}
}



查看完整回答
反對 回復 2019-03-18
  • 2 回答
  • 0 關注
  • 761 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號