「java画可移动的线」移动的线条怎么画
本篇文章给大家谈谈java画可移动的线,以及移动的线条怎么画对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、java怎样动态画一条线
- 2、java实现点斜线、曲线线移动。
- 3、java怎么让一条线段变长,就是说画一条线段,可以拖动鼠标让它变长,和缩短!
- 4、java 最简单的画线演示程序
- 5、小弟菜鸟一枚java鼠标跟随问题,我想让下面代码在鼠标“快速”移动时画完整的线,不是断断续续的哟!
- 6、请问如何用JAVA动态的画线?
java怎样动态画一条线
如果不想用repaint,可以用你要绘图的对象.getGraphics()的到Graphics对象来drawLine,但同时要记录所绘图像,因为某些时候需要在paint中重绘。paint(Graphics g)还是要重写的,不然当窗口最小化再恢复时图像就没了。
其实这样有点麻烦,如果仅仅是不想让图像闪烁的厉害可以用双缓冲机制。
java实现点斜线、曲线线移动。
其实有小数无所谓的,直接舍去或四舍五入等办法
屏幕的最小单位就是像素,你不可能让画图帮你画出半个像素宽度东西来
所以大胆地用你原来的方法吧,该舍就舍吧
java怎么让一条线段变长,就是说画一条线段,可以拖动鼠标让它变长,和缩短!
写个A类继承JFrame 接口-MouseMotionListener
//重写下面的函数 实现鼠标拉扯
public void mouseDragged(MouseEvent e) {
// TODO Auto-generated method stub
Point point = e.getLocationOnScreen(); //拉扯时鼠标的位置
}
A类接口-Runnable //用线程让JFrame不断刷新
//重写画笔
public void paint(Graphics g){
super.paint(g);
g.drawLine。。。具体我就不写了
}
java 最简单的画线演示程序
对于你拖动的时候会描出很多线的问题,可以在public void paint(Graphics g)函数中,用super.paint(g);语句解决,就象下面我的程序一样。
最简单的画线演示程序如下:
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class DrawLine extends JFrame implements MouseListener,MouseMotionListener{
private int x0=0,y0=0,x=0,y=0;
JPanel jp=new JPanel();
DrawLine(){
jp.addMouseListener(this);
jp.addMouseMotionListener(this);
add(jp);
setSize(300, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
public void paint(Graphics g){
super.paint(g);
g.drawLine(x0, y0, x, y);
}
public static void main(String[] args) {
new DrawLine();
}
public void mouseDragged(MouseEvent arg0) {
x=arg0.getXOnScreen();
y=arg0.getYOnScreen();
repaint();
}
public void mouseMoved(MouseEvent arg0) {}
public void mouseClicked(MouseEvent arg0) {}
public void mouseEntered(MouseEvent arg0) {}
public void mouseExited(MouseEvent arg0) {}
public void mousePressed(MouseEvent arg0) {
x0=arg0.getXOnScreen();
y0=arg0.getYOnScreen();
}
public void mouseReleased(MouseEvent arg0) {
x=arg0.getXOnScreen();
y=arg0.getYOnScreen();
repaint();
}
}
小弟菜鸟一枚java鼠标跟随问题,我想让下面代码在鼠标“快速”移动时画完整的线,不是断断续续的哟!
import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;
import javax.swing.JFrame;
public class MouseDrawLine extends JFrame {
int x, y;
int endX, endY;
public MouseDrawLine() {
addMouseListener(new MouseAdapter() {
//鼠标下压事件
@Override
public void mousePressed(MouseEvent e) {
x = e.getX();
y = e.getY();
}
//鼠标弹起事件
@Override
public void mouseReleased(MouseEvent e) {
System.out.println("鼠标弹起事件");
}
});
addMouseMotionListener(new MouseMotionAdapter() {
//鼠标下压移动事件
@Override
public void mouseDragged(MouseEvent e) {
Graphics g = getGraphics();
g.setColor(Color.BLACK);
endX = e.getX();
endY = e.getY();
g.drawLine(x, y, endX, endY);
x = endX;
y = endY;
}
});
setSize(600, 500);
setLocation(200,100);
setVisible(true);
setDefaultCloseOperation(3);
}
public static void main(String[] args) {
new MouseDrawLine();
}
}
请问如何用JAVA动态的画线?
java 2D API,或者考虑javaFX。
不过根据你的业务需求,应该是需要报表工具。
可以看一下JasperReports,他对JfreeChart报表图有封装。
或者你直接使用JfreeChart也可以。
具体怎么用,网上一大把,你搜这两个英文就行了。
关于java画可移动的线和移动的线条怎么画的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-11-24,除非注明,否则均为
原创文章,转载请注明出处。