「java界面功能」java做界面用什么

博主:adminadmin 2023-01-16 01:57:08 472

本篇文章给大家谈谈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做界面用什么的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。