java图形的移动,函数图形移动

本文目录一览:

java中如何控制图形移动

图像移动效果是你第一眼看到他在这,第二眼看到他在那。

所以你要做两件事,,

1,不断绘图

2,改变要绘制的对象的位置

另一种方式,,

绘制一下,改变一下位置,绘制一下,改变,,,

相关类,,

窗体JFRAME

绘制面板PANEL

重写绘制面板的PAINT方法,用一个线程以一定频率不断调用重绘方法,

java如何实现图片拖动,放大缩小,旋转。

这个只是实现了移动,你参考以下吧 !

public class MoveImage {

static int x,y;

private static int num=0;

private static Icon icon=null;

public static void main(String[] args) throws Exception{

JFrame f = new JFrame();

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

f.getContentPane().setLayout(null);//这个要设置成 null

//图片

icon = new ImageIcon(“d:/test.gif”);//d:/test.gif本地一张图片

JLabel l = new JLabel(icon); //创建具有指定图像的 JLabel 实例。

l.setSize(icon.getIconWidth(),icon.getIconHeight());//设置面板的宽度和高度

l.setBorder(BorderFactory.createLineBorder(Color.red));//给图片加上红色外框

f.getContentPane().add(l);

f.setSize(900,700);

f.setVisible(true);

l.addMouseListener(new MouseAdapter(){

public void mousePressed(MouseEvent e){

x=e.getX();

y=e.getY();

}

});

l.addMouseMotionListener(new MouseMotionListener(){

public void mouseDragged(MouseEvent e) {

JLabel l = (JLabel)e.getSource();

l.setLocation(l.getX()+e.getX()-x,l.getY()+e.getY()-y);

}

public void mouseMoved(MouseEvent e) {}

});

}

在Java怎么让图片水平移动?

  java让图片水平移动,就是不断监听图片的位置,示例如下:

//给个实例

 import java.awt.Color; 

import java.awt.event.MouseAdapter; 

import java.awt.event.MouseEvent; 

import java.awt.event.MouseMotionListener; 

import java.net.URL;

 import javax.swing.BorderFactory; 

import javax.swing.Icon; 

import javax.swing.ImageIcon; 

import javax.swing.JFrame; 

import javax.swing.JLabel;

 public class ImageMove { 

 static int x,y; 

 public static void main(String[] args) throws Exception{ 

 JFrame f = new JFrame(); 

 f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

 f.getContentPane().setLayout(null);//这个要设置成 null 

 //图标 

 Icon icon = new ImageIcon(new URL(“”)); 

// Icon icon = new ImageIcon(“c:/logo-zhidao.gif”);//本地图片文件

 JLabel l = new JLabel(icon);

 l.setSize(icon.getIconWidth(),icon.getIconHeight()); l.setBorder(BorderFactory.createLineBorder(Color.red)); 

 f.getContentPane().add(l); f.setVisible(true); 

 l.addMouseListener(

new MouseAdapter(){

 public void mousePressed(MouseEvent e){ x=e.getX();y=e.getY(); } });

 l.addMouseMotionListener(new MouseMotionListener(){ public void mouseDragged(MouseEvent e) { JLabel l = (JLabel)e.getSource();

 l.setLocation(l.getX()+e.getX()-x,l.getY()+e.getY()-y);

 }

 public void mouseMoved(MouseEvent e) {} }); } }

怎么编写java程序实现图片的移动(最好有例子)

import java.awt.Color;

import java.awt.Graphics;

import java.awt.Image;

import java.awt.event.KeyAdapter;

import java.awt.event.KeyEvent;

import javax.swing.JFrame;

public class DrawTest extends JFrame {

private int x = 50;

private int y = 50;

private Image offScreenImage = null;

@Override

public void paint(Graphics g) {

Color c = g.getColor();

g.setColor(Color.BLACK);

g.fillOval(x, y, 30, 30);

g.setColor(c);

}

public void update(Graphics g) {

if (offScreenImage == null) {

offScreenImage = this.createImage(500, 500);

}

Graphics gOffScreen = offScreenImage.getGraphics();

Color c = gOffScreen.getColor();

gOffScreen.setColor(Color.GREEN);

gOffScreen.fillRect(0, 0, 500, 500);

gOffScreen.setColor(c);

paint(gOffScreen);

g.drawImage(offScreenImage, 0, 0, null);

}

public static void main(String[] args) {

DrawTest d = new DrawTest();

}

public DrawTest() {

init();

addKeyListener(new KeyAdapter() {

public void keyPressed(final KeyEvent e) {

int code = e.getKeyCode();

switch (code) {

case KeyEvent.VK_UP:

y -= 5;

break;

case KeyEvent.VK_RIGHT:

x += 5;

break;

case KeyEvent.VK_DOWN:

y += 5;

break;

case KeyEvent.VK_LEFT:

x -= 5;

break;

}

}

});

}

public void init() {

this.setDefaultCloseOperation(this.EXIT_ON_CLOSE);

this.setBackground(Color.GREEN);

this.setResizable(false);

this.setBounds(140, 140, 500, 500);

this.setVisible(true);

MyThread mt = new MyThread();

new Thread(mt).start();

}

class MyThread implements Runnable {

public void run() {

while (true) {

repaint();

try {

Thread.sleep(100);

} catch (InterruptedException e) {

e.printStackTrace();

}

}

}

}

}

以上

java 画了一个圆,怎么让它上下左右移动啊?

移动圆,改变它的圆心即可,可以通过给圆心设置一个运动轨迹函数实现,实例代码为;

public class joinDemo1 extends JFrame

{

 //继承    

 private int x=100, y=100, r=100; 

 

 //初始值   

 public joinDemo1() 

 {        

  super(“小图形”);       

  this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        

        

  this.setSize(800, 600);        

  this.setVisible(true); 

  Thread thread=new Thread(new Graphicss());

  thread.start();

}    

 public void paint(Graphics g)

 {        

  super.paint(g);        

  g.fillOval(x, y, r, r);    

 }    

 public static void main(String[] args)

 {        

  new joinDemo1();    

 }     

 

 class Graphicss implements Runnable{

  @Override

  public void run() {

   // TODO Auto-generated method stub

for (int j = 0; j = 240; j++) {

      revalidate();

  // System.out.println(j);                

                try {

                    Thread.sleep(1000);// 当前线程休眠0.01秒

                    

                } catch (InterruptedException e) {

                    e.printStackTrace();

                }

   

                y=y+j;

     repaint();           

                

}

}

}

}

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/195704.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝的头像小蓝
上一篇 2024-12-02 20:36
下一篇 2024-12-02 20:37

相关推荐

  • Python中引入上一级目录中函数

    Python中经常需要调用其他文件夹中的模块或函数,其中一个常见的操作是引入上一级目录中的函数。在此,我们将从多个角度详细解释如何在Python中引入上一级目录的函数。 一、加入环…

    编程 2025-04-29
  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Python中capitalize函数的使用

    在Python的字符串操作中,capitalize函数常常被用到,这个函数可以使字符串中的第一个单词首字母大写,其余字母小写。在本文中,我们将从以下几个方面对capitalize函…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • Python中set函数的作用

    Python中set函数是一个有用的数据类型,可以被用于许多编程场景中。在这篇文章中,我们将学习Python中set函数的多个方面,从而深入了解这个函数在Python中的用途。 一…

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • 三角函数用英语怎么说

    三角函数,即三角比函数,是指在一个锐角三角形中某一角的对边、邻边之比。在数学中,三角函数包括正弦、余弦、正切等,它们在数学、物理、工程和计算机等领域都得到了广泛的应用。 一、正弦函…

    编程 2025-04-29

发表回复

登录后才能评论