⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 facefrm.java

📁 简单的聊天程序
💻 JAVA
字号:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class FaceFrm extends JDialog{

	public FaceFrm(){
		this.add(new FaceCanvas());
		this.setUndecorated(true);
		this.pack();
	}
	private class FaceCanvas extends Canvas{
		private ImageIcon img;
		private int CELL;
		private int currentX,currentY;
		public FaceCanvas(){
			img = new ImageIcon("GIF/faces.gif");
			currentX =0;
			currentY =0;
			this.setPreferredSize(
					new Dimension(img.getIconWidth(),img.getIconHeight()));
			CELL = img.getIconWidth()/15;
			this.setFocusable(true);
			hookEvent();
		}
		public void paint(Graphics g){
			g.drawImage(img.getImage(), 0, 0, null);
			g.draw3DRect(currentX*CELL, currentY*CELL, CELL,CELL,true);
		}
		private void hookEvent(){
			this.addMouseMotionListener(new MouseMotionAdapter(){
				public void mouseMoved(MouseEvent e){
					currentX = e.getPoint().x/CELL;
					currentY = e.getPoint().y/CELL;
					FaceCanvas.this.repaint();
				}
			});
			this.addMouseListener(new MouseAdapter(){
				public void mouseClicked(MouseEvent e){
					 dealEnter();
				}
				public void mouseExited(MouseEvent e){
					FaceFrm.this.setVisible(false);
				}
			});
			this.addKeyListener(new KeyAdapter(){
				public void keyPressed(KeyEvent e){
					switch(e.getKeyCode()){
					case KeyEvent.VK_ESCAPE:
						FaceFrm.this.setVisible(false);
						break;
					case KeyEvent.VK_UP:
						currentY = currentY-1<0?0:currentY-1;
						FaceCanvas.this.repaint();
						break;
					case KeyEvent.VK_DOWN:
						currentY = (currentY+1) % 6;
						FaceCanvas.this.repaint();
						break;
					case KeyEvent.VK_RIGHT:
						currentX = (currentX+1) % 16;
						FaceCanvas.this.repaint();
						break;
					case KeyEvent.VK_LEFT:
						currentX = currentX-1<0?0:currentX-1;
						FaceCanvas.this.repaint();
						break;
					case KeyEvent.VK_ENTER:
						dealEnter();
					}
				}
			});
		}
		private void dealEnter(){
			System.out.println("good");
		}

	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -