msfaceframe.java

来自「一个类似QQ表情的Java程序」· Java 代码 · 共 112 行

JAVA
112
字号
package Src;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.net.URL;
import java.io.IOException;
import javax.swing.text.*;

public class MSFaceFrame extends JFrame 
{  
	int X;
	int Y;
	int faceI;	
	Point p;
	JFrame faceWindow;
	public static final int DEFAULT_WIDTH = 300;
	public static final int DEFAULT_HEIGHT = 200;

	FaceButton[] faceButton = new FaceButton[96];
	boolean[] FaceButtonClick =  new boolean[96];
	JTextPane  messageText;

		public MSFaceFrame(){  
			setResizable(false);
			setTitle("Face");
			setSize(DEFAULT_WIDTH, DEFAULT_HEIGHT);
			setLocation(DEFAULT_WIDTH,DEFAULT_HEIGHT);
			addWindowListener(new WindowAdapter(){
				 public void windowClosing(WindowEvent e){
					 System.exit(0);
				 }
			});



		Container contentPane = getContentPane();
		JPanel panel = new JPanel();
		contentPane.add(panel, "Center");


		
		ImageIcon buttonBarIcon = new ImageIcon("Face/14.gif");
		FaceButton faceBarButton = new FaceButton(buttonBarIcon);



		 messageText = new JTextPane();
	

		JToolBar faceBar = new JToolBar() ;
			 faceBar.setFloatable(false);
			 faceBar.add(faceBarButton);

			 contentPane.add(faceBar, "North");
			 contentPane.add(messageText,"Center");

		faceBarButton.addMouseListener(new MouseAdapter(){
				public void mousePressed(MouseEvent event){	
					
					p = getLocation(event.getPoint());
					X= p.x;
					Y = p.y;
				}
				
		});
		faceBarButton.addActionListener(new ActionListener(){
				public void actionPerformed(ActionEvent event){	
				
					faceWindow = new JFrame("");
					FacePanel panel = new FacePanel();
					Container contentPane = faceWindow.getContentPane();
					contentPane.add(panel);
						
						
					
					for( faceI= 0;faceI<96 ; faceI++){

						ImageIcon icon = new ImageIcon("Face/"+faceI+".gif");
						faceButton[faceI] = new FaceButton(icon);
						
						

						faceButton[faceI].addActionListener(new ActionListener(){
							public void actionPerformed(ActionEvent event){	
								FaceButton button = (FaceButton)event.getSource();
								messageText.insertIcon(button.getImageIcon());
								messageText.requestFocus();
								faceWindow.setVisible(false);

							}
						});
						panel.add(faceButton[faceI]);
					}                                    


					
			




				faceWindow.setLocation(X-180,Y+60);
				faceWindow.setSize(380,290);
				faceWindow.setUndecorated(true);
				faceWindow.setVisible(true);
				}
				});


   }

}

⌨️ 快捷键说明

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