「java界面功能」java做界面用什么
本篇文章给大家谈谈java界面功能,以及java做界面用什么对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
java的图形界面编程有没有类似于MFC那样的功能的?
你好,你说的这种,有一个java的编辑器,叫做NetBeans,可以实现你说的这种功能,但是,功能可能不像你说的MFC那么多。
另外说一句,java确实可以做界面,但还是少,毕竟java运行在虚拟机中,窗口的各种操作,你都会有一种慢的感觉,java还是比较适合做web应用的。
求教用java实现如下图形界面功能。
粗略地做了一个出来,闪烁的问题暂时无法解决,其他的还可以吧,先上代码:
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.imageio.ImageIO;
import javax.swing.JFrame;
public class TestImage extends JFrame implements MouseListener, MouseMotionListener {
private Image offScreenImage;
private Image background, sprite;
private static final int WIDTH = 800;
private static final int HEIGHT = 600;
private int x0 = 0, y0 = 0;
private int x1, y1;
private ListBounds bounds;
private Bounds mCurrentBounds = null;
public TestImage() {
super("绘图");
bounds = new ArrayListBounds();
}
private void launch() {
setSize(WIDTH, HEIGHT);
setResizable(false);
setVisible(true);
try {
background = ImageIO.read(TestImage.class.getResource("/res/clock.jpg"));
sprite = ImageIO.read(TestImage.class.getResource("/res/light_buble2.png"));
} catch (IOException e) {
e.printStackTrace();
}
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLocationRelativeTo(null);
new Thread(new Repaint()).start();
addMouseListener(this);
addMouseMotionListener(this);
}
@Override
public void update(Graphics g) {
if(null == offScreenImage) {
offScreenImage = createImage(WIDTH, HEIGHT);
}
Graphics gImage = offScreenImage.getGraphics();
gImage.clearRect(0, 0, WIDTH, HEIGHT);
paint(gImage);
g.drawImage(offScreenImage, 0, 0, null);
}
@Override
public void paint(Graphics g) {
g.drawImage(background, 0, 0, WIDTH, HEIGHT, null);
for(Bounds bound : bounds) {
g.drawImage(sprite, bound.x0, bound.y0, bound.x1 - bound.x0, bound.y1 - bound.y0, null);
}
if(null != mCurrentBounds) {
g.drawImage(sprite, mCurrentBounds.x0, mCurrentBounds.y0,
Math.abs(mCurrentBounds.x1 - mCurrentBounds.x0),
Math.abs(mCurrentBounds.y1 - mCurrentBounds.y0), null);
}
}
public static void main(String[] args) {
new TestImage().launch();
}
@Override
public void mouseClicked(MouseEvent e) {
}
@Override
public void mouseEntered(MouseEvent e) {
}
@Override
public void mouseExited(MouseEvent e) {
}
@Override
public void mousePressed(MouseEvent e) {
x1 = x0 = e.getX();
y1 = y0 = e.getY();
mCurrentBounds = new Bounds(x0, y0, x1, y1);
}
@Override
public void mouseReleased(MouseEvent e) {
if(null != mCurrentBounds) {
bounds.add(mCurrentBounds);
}
mCurrentBounds = null;
}
@Override
public void mouseDragged(MouseEvent e) {
if(null != mCurrentBounds) {
int x = e.getX();
int y = e.getY();
if(x x0) {
x1 = x;
} else {
x0 = x;
}
if(y y0) {
y1 = y;
} else {
y0 = y;
}
mCurrentBounds.setBounds(x0, x1, y0, y1);
}
}
@Override
public void mouseMoved(MouseEvent e) {
}
class Repaint implements Runnable {
@Override
public void run() {
while(true) {
try {
Thread.sleep(30L);
repaint();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
class Bounds {
public int x0;
public int y0;
public int x1;
public int y1;
public Bounds(int x0, int y0, int x1, int y1) {
this.x0 = x0;
this.y0 = y0;
this.x1 = x1;
this.y1 = y1;
}
public void setBounds(int x0, int x1, int y0, int y1) {
this.x0 = x0;
this.x1 = x1;
this.y0 = y0;
this.y1 = y1;
}
}
运行时就是鼠标点击画板并按住,然后拖拽就可以画一个电灯出来。所需的图片资源在附件内,根据代码相信你应该能够知道要放到哪个目录下吧。运行效果也截一个图给你。
JAVA界面中如何实现撤销的功能呢
那得建立一个列表ArrayList,里面保存你所有的记录,比如一个联系人是一个类class
People,然后你建一个ArrayList
list=new
ArrayList
();然后每操作一次都将这个联系人存进这个列表里list.add(people123);并且设置一个标志位true或者false,表示这个联系人是增加的或是删除的。
用Java如何实现界面的功能?
在java中怎样实现多个界面之间的切换 用Iframe 就可以了
补充:Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
关于java界面功能和java做界面用什么的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。