A. 用java實現滑鼠自動移動到指定的坐標
java.awt.Robot
自己摸索吧。
B. java可以不可以像按鍵精靈一樣,將一個程序的窗口移動到指定屏幕的坐標如果可以,求關鍵代碼。
這個的話,我只能提供一條路子,請查看Java的API,有一個類叫做Robot,其中是這樣介紹的:
public class Robot
extends Object
此類用於為測試自動化、自運行演示程序和其他需要控制滑鼠和鍵盤的應用程序生成本機系統輸入事件。Robot 的主要目的是便於 Java 平台實現自動測試。
使用該類生成輸入事件與將事件發送到 AWT 事件隊列或 AWT
組件的區別在於:事件是在平台的本機輸入隊列中生成的。例如,Robot.mouseMove
將實際移動滑鼠游標,而不是只生成滑鼠移動事件。
注意,某些平台需要特定許可權或擴展來訪問低級輸入控制項。如果當前平台配置不允許使用輸入控制項,那麼試圖構造 Robot 對象時將拋出
AWTException。例如,如果 X 伺服器不支持(或沒有啟用)XTEST 2.2 標准擴展,則 X-Window
系統會拋出異常。
出於自測試之外的目的而使用 Robot 的應用程序應妥善處理這些錯誤條件。
從以下版本開始:
C. 用java 定義一個類來描述二維點,提供方法列印二維點的坐標,構造方法移動二維點的坐標,將二維點移
publicclasstwopoint{
privateintx;
privateinty;
publicvoidset(inta,intb){
x=a;
y=b;
}
publicvoidget(){
System.out.println("("+x+","+y+")");
}
publictwopoint(intc,intd){
set(c,d);
get();
}
}
D. java 簡單動畫 就是將一個圓點從一個坐標移動到另一個坐標即可
一個簡單的範例,不明白追問吧
import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class MoveAnimationDemo extends JFrame {
public MoveAnimationDemo() {
this.setContentPane(new AnimationPanel());
this.setSize(500, 500);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
}
/**
* 開始動畫
*/
public void startAnimation() {
// 設定初始條件
x = START_X;
y = START_Y;
// 創建計時器
timer = new Timer(DELAY_TIME, new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// 每一次延遲過後,調用一次
x += 1;
y += 1;
repaint();
// 滿足結束條件就停止
if (x >= END_X || y >= END_Y) {
timer.stop();
}
}
});
// 開啟計時器
timer.start();
}
public static void main(String[] args) {
MoveAnimationDemo demo = new MoveAnimationDemo();
demo.setVisible(true);
demo.startAnimation();
}
private class AnimationPanel extends JPanel {
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(CIRCLE_COLOR);
g.fillOval(x, y, CIRCLE_SIZE, CIRCLE_SIZE);
}
}
// 圓點顏色
private static final Color CIRCLE_COLOR = Color.RED;
// 圓點大小
private static final int CIRCLE_SIZE = 10;
// 起始位置
private static final int START_X = 50;
private static final int START_Y = 50;
// 終止位置
private static final int END_X = 400;
private static final int END_Y = 400;
// 動畫幀之間的延時,每秒60幀
private static final int DELAY_TIME = 1000 / 60;
// 當前位置
private int x;
private int y;
private Timer timer;
}
E. 用java怎樣編寫一個二維坐標平移程序
網上很多這樣的。
class Point2D
{
int x, y;
Point2D(){ }
Point2D(int i,int j)
{
x=i;
y=j;
}
void offset(int a, int b)
{
x=x+a;
y=y+b;
}
void distance(Point2D a,Point2D b)
{
float m;
m=(float)Math.sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
System.out.print("二維空間兩點之間的距離:");
System.out.println("m="+m);
}
}
public class Point3D extends Point2D
{
int x,y,z;
Point3D(int x,int y,int z)
{
this.x=x;
this.y=y;
this.z=z;
}
Point3D(Point2D p,int z)
{
x=p.x;
y=p.y;
this.z=z;
}
void offset(int a, int b,int c)
{
x=x+a;
b=x+b;
c=x+c;
}
void distance(Point3D a,Point3D b)
{
float n;
n=(float)Math.sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y)+(a.y-b.y)*(a.y-b.y));
System.out.print("三維空間兩點之間的距離:");
System.out.println("n="+n);
}
public static void main(String[] args)
{
Point2D p2d1=new Point2D(2,3);
Point2D p2d2=new Point2D(3,6);
Point3D p2d3=new Point3D(1,2,3);
Point3D p2d4=new Point3D(p2d1,3);
p2d1.distance(p2d1,p2d2);
p2d3.distance(p2d3,p2d4);
}
}