本文目錄一覽:
- 1、java圖形界面設計實驗,求源代碼!
- 2、求java圖形界面樹類編程源碼舉例。類似windows資源管理器那樣的。如附圖,2層2項即可。
- 3、Java 用戶界面設計 求界面代碼
- 4、JAVA的圖形用戶界面代碼
- 5、求java版畫圖程序的源代碼
java圖形界面設計實驗,求源代碼!
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Calculator01 extends JFrame implements ActionListener {
JPanel jp1,jp2;
JTextField jt1,jt2,jt3;
JButton btn_add,btn_sub,btn_clean;
public Calculator01() {
init();
}
public void init() {
setTitle(“簡易計算器”);
setLocationRelativeTo(null);
setSize(600, 100);
jp1 = new JPanel();
jp2 = new JPanel();
add(jp1, BorderLayout.NORTH);
add(jp2,BorderLayout.SOUTH);
jt1 = new JTextField(15);
jp1.add(jt1);
jt2 = new JTextField(15);
jp1.add(jt2);
jt3 = new JTextField(15);
jp1.add(jt3);
btn_add = new JButton(“+”);
btn_add.addActionListener(this);
jp2.add(btn_add);
btn_sub = new JButton(“-“);
btn_sub.addActionListener(this);
jp2.add(btn_sub);
btn_clean = new JButton(“清除”);
btn_clean.addActionListener(this);
jp2.add(btn_clean);
setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
if (e.getSource() == btn_clean)
{
jt1.setText(“”);
jt2.setText(“”);
jt3.setText(“”);
}
else
{
if (jt1.getText().equals(“”) || jt2.getText().equals(“”))
{
JOptionPane.showMessageDialog(null, “請在前兩個框輸入數字”);
}
else
{
double number1=Double.parseDouble(jt1.getText());
double number2=Double.parseDouble(jt2.getText());
double result=0;
if (e.getSource() == btn_add)
{
result = number1 + number2;
}
else
{
result = number1 – number2;
}
jt3.setText(“”+result);
}
}
}
}
求java圖形界面樹類編程源碼舉例。類似windows資源管理器那樣的。如附圖,2層2項即可。
public void init(){
Container contentPane=null;
DefaultMutableTreeNode treeNode=new DefaultMutableTreeNode(“我的電腦”);
DefaultMutableTreeNode treeNode1=new DefaultMutableTreeNode(“網路”);
DefaultMutableTreeNode treeNode2=new DefaultMutableTreeNode(“硬碟”);
DefaultMutableTreeNode treeNode1_1=new DefaultMutableTreeNode(“無限”);
DefaultMutableTreeNode treeNode1_2=new DefaultMutableTreeNode(“有限”);
DefaultMutableTreeNode treeNode2_1=new DefaultMutableTreeNode(“A”);
DefaultMutableTreeNode treeNode2_2=new DefaultMutableTreeNode(“B”);
treeNode.add(treeNode1);
treeNode.add(treeNode2);
treeNode1.add(treeNode1_1);
treeNode1.add(treeNode1_2);
treeNode2.add(treeNode2_1);
treeNode2.add(treeNode2_2);
JTree tree=new JTree(treeNode);
contentPane=getContentPane();
JPanel jp=new JPanel();
jp.add(tree);
contentPane.add(jp);
this.setSize(300,250);
this.setLocation(400, 300);
this.setVisible(true);
}
Java 用戶界面設計 求界面代碼
一: 首先弄清題目的意思
A.需要的主要組件列表:
1. 創建一個窗口,窗口標題叫Information
2. 3個標籤, 用於顯示文字 Name Number Class
3. 3個文本框, 用於填寫信息
4. 1個按鈕, 文字是確認
5. 1個文本域
B.業務邏輯
1. 當點擊按鈕確認的時候, 把 文本框的信息顯示到文本域
C.設計的主要技術
JLabel , JButton, JTextField …等, 都是swing的組件 , 所以應該使用swing進行創建
二: 確定使用的布局
swing雖然重寫了大部分的組件, 但是布局, 依舊沿襲awt技術
分析圖片上的布局:
至少有2種方法可以實現,
方法一: 絕對布局 , 優點: 配合可視化GUI拖曳, 可以完美的實現圖上的組件的位置
但是缺點也是致命的, 不同的操作系統平台下, 可能會出現位置的移動,
只適合開發平台, 移植效果差 . 所以不推薦使用
方法二: 靈活的表格布局, 配合流式布局 , 所有操作系統下,顯示效果都比較統一.
三: 效果圖
四: 參考代碼
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class FrameDemo extends JFrame {
//申明需要的組件
private final JTextField jtf1,jtf2,jtf3;
private final JTextArea jta;
public FrameDemo() {
setTitle(“Information”);//設置窗口標題
setSize(320, 360);//設置窗口大小
setLocationRelativeTo(null);//設置窗口居中
setDefaultCloseOperation(EXIT_ON_CLOSE);//設置關閉時退出虛擬機
getContentPane().setLayout(new FlowLayout());//設置窗口布局為流式布局
JPanel jp = new JPanel(new GridLayout(4, 2));//設置jp面板為表格布局4行2列
//第一行
JPanel jp01 = new JPanel();
JLabel jl1 = new JLabel(“Name:”);
jp01.add(jl1);
JPanel jp1 = new JPanel();
jtf1 = new JTextField(8);
jp1.add(jtf1);
//第二行
JPanel jp02 = new JPanel();
JLabel jl2 = new JLabel(“Number:”);
jp02.add(jl2);
JPanel jp2 = new JPanel();
jtf2 = new JTextField(8);
jp2.add(jtf2);
//第三行
JPanel jp03 = new JPanel();
JLabel jl3 = new JLabel(“Class:”);
jp03.add(jl3);
JPanel jp3 = new JPanel();
jtf3 = new JTextField(8);
jp3.add(jtf3);
//第四行
JPanel jp04 = new JPanel();
JLabel jl4 = new JLabel(“”);
jp04.add(jl4);
JPanel jp4 = new JPanel();
JButton jb = new JButton(“確認”);
jp4.add(jb);
jp.add(jp01);
jp.add(jp1);
jp.add(jp02);
jp.add(jp2);
jp.add(jp03);
jp.add(jp3);
jp.add(jp04);
jp.add(jp4);
getContentPane().add(jp);
jta = new JTextArea();
jta.setColumns(20);//設置文本域的大小
jta.setEditable(false);//設置文本域不可編輯
jta.setBackground(jp.getBackground());//設置文本域的背景色和面板一樣
getContentPane().add(jta);
jb.addActionListener(new ActionListener() {//給按鈕添加事件
public void actionPerformed(ActionEvent e) {//點擊按鈕,顯示信息到文本域
String name = jtf1.getText();
String number = jtf2.getText();
String clazz = jtf3.getText();
jta.setText(“You name is “+name+” number is “+number+” class is “+clazz);
}
});
}
public static void main(String[] args) {
new FrameDemo().setVisible(true);//創建窗口,被設置為可見
}
}
五: 拓展
雖然圖形界面的實現方法是多樣的, 我們一定要根據具體情況, 選擇一個比較優化的 合理的, 符合業務邏輯的實現方法
JAVA的圖形用戶界面代碼
package hao;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.io.File;
import javax.swing.BorderFactory;
import javax.swing.Box;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextPane;
import javax.swing.text.BadLocationException;
import javax.swing.text.SimpleAttributeSet;
import javax.swing.text.StyleConstants;
import javax.swing.text.StyledDocument;
public class ChatPanel extends JPanel {
private static final long serialVersionUID = 1L;
JButton send,record,saveRecord,image;
JTextArea inputArea;
JTextPane text;//注意用法****************************************************************************
JComboBox fontName = null, fontSize = null, fontStyle = null, fontColor = null,fontBackColor = null;
public StyledDocument doc = null; JScrollPane scrollPane;JPanel textChat;
JButton music;
public ChatPanel() {
setLayout(new BorderLayout());
text = new JTextPane();
text.setEditable(false);
doc = text.getStyledDocument();//跟蹤文本和圖片寫到該區域的位置*************************************
scrollPane = new JScrollPane(text);
//注意下面對JComboBox的巧用***********************************************************************
String[] str_name = { “宋體”, “黑體”, “Dialog”, “Gulim” };
String[] str_Size = { “12”, “14”, “18”, “22”, “30”, “40” };
String[] str_Style = { “常規”, “斜體”, “粗體”, “粗斜體” };
String[] str_Color = { “黑色”, “紅色”, “藍色”, “黃色”, “綠色” };
String[] str_BackColor = { “無色”, “灰色”, “淡紅”, “淡藍”, “淡黃”, “淡綠” };
fontName = new JComboBox(str_name);
fontSize = new JComboBox(str_Size);
fontStyle = new JComboBox(str_Style);
fontColor = new JComboBox(str_Color);
fontBackColor = new JComboBox(str_BackColor);
fontName.setBackground(new Color(255,153,255));
fontSize.setBackground(new Color(255,153,255));
fontStyle.setBackground(new Color(255,153,255));
fontColor.setBackground(new Color(255,153,255));
fontBackColor.setBackground(new Color(255,153,255));
Box box = Box.createVerticalBox();//創建一個可以容納多個Box組件的Box*******************************
Box box_1 = Box.createHorizontalBox();
Box box_2 = Box.createHorizontalBox();
Box box_4 = Box.createHorizontalBox();
box.add(box_1);
box.add(box_2);
box.add(box_4);
JLabel b1= new JLabel(“字體~~”), b2 = new JLabel(“樣式~~”),b3 = new JLabel(“字型大小~~”),b4 = new JLabel(“顏色~~”),b5 = new JLabel(“背景~~”);
b1.setBackground(new Color(255,153,255));
b2.setBackground(new Color(255,153,255));
b3.setBackground(new Color(255,153,255));
b4.setBackground(new Color(255,153,255));
b5.setBackground(new Color(255,153,255));
box_1.add(b1);
box_1.add(fontName);
box_1.add(Box.createHorizontalStrut(8));
box_1.add(b2);
box_1.add(fontStyle);
box_1.add(Box.createHorizontalStrut(8));
box_1.add(b3);
box_1.add(fontSize);
box_2.add(Box.createHorizontalStrut(8));
box_2.add(b4);
box_2.add(fontColor);
box_2.add(Box.createHorizontalStrut(8));
box_4.add(b5);
box_4.add(fontBackColor);
textChat = new JPanel();
textChat.setLayout(new BorderLayout());
textChat.setBackground(new Color(255,153,255));
inputArea = new JTextArea(3, 20);
inputArea.setLineWrap(true); //設置文本區的換行策略。88888*********************************
send = new JButton(“發送”);
record=new JButton(“顯示記錄”);
saveRecord=new JButton(“儲存記錄”);
image=new JButton(“表情”);
send.setBackground(new Color(255,153,255));
record.setBackground(new Color(255,153,255));
saveRecord.setBackground(new Color(255,153,255));
image.setBackground(new Color(255,153,255));
Box box_3 = Box.createHorizontalBox();
box_3.add(send); box_3.add(Box.createHorizontalStrut(8));//設置按鈕間距*************************888
box_3.add(record); box_3.add(Box.createHorizontalStrut(8)); //設置按鈕間距*************************888
box_3.add(saveRecord); box_3.add(Box.createHorizontalStrut(8));//設置按鈕間距*************************888
box_3.add(image);
box.setBorder(BorderFactory.createLineBorder(new Color(102,102,0),5));//設置Box的邊框線********************
box_3.setBorder(BorderFactory.createLineBorder(new Color(102,102,0),5));
textChat.add(box,BorderLayout.NORTH);
textChat.add(inputArea,BorderLayout.CENTER);
textChat.add(box_3, BorderLayout.SOUTH);
inputArea.requestFocus(true);
inputArea.setBorder(BorderFactory.createLineBorder(new Color(102,102,0),5));//設置輸入窗口邊框線*******************
text.setBorder(BorderFactory.createLineBorder(new Color(102,102,0),8));//設置輸入窗口邊框線*******************
JPanel audioPanel = new JPanel();//最上面的邊框************************************************************************
audioPanel.setBackground(new Color(255,153,255));
audioPanel.setLayout(new GridLayout(1,1));
music = new JButton(“想聽就聽”);
music.setPreferredSize(new Dimension(320,50));
music.setBorder(BorderFactory.createLineBorder(Color.BLACK,10));//設置輸入窗口邊框線*******************
audioPanel.add(music);
add(audioPanel, BorderLayout.NORTH);
add(scrollPane,BorderLayout.CENTER);
add(textChat, BorderLayout.SOUTH);
}
void insertIcon(ImageIcon image) {
text.setCaretPosition(doc.getLength());
text.insertIcon(image);
insert(new MessageStyle());//?????????????????????????????????????????????????????????????????????????????/
}
public void insert(MessageStyle attrib) {
try {
doc.insertString(doc.getLength(), attrib.getText() + “\n”, attrib.getAttrSet());//寫完後接著換行************
} catch (BadLocationException e) {
e.printStackTrace();
}
}
public MessageStyle getMessageStyle(String line) {
MessageStyle att = new MessageStyle();
att.setText(line);
att.setName((String) fontName.getSelectedItem());
att.setSize(Integer.parseInt((String) fontSize.getSelectedItem()));
String temp_style = (String) fontStyle.getSelectedItem();
if (temp_style.equals(“常規”)) {
att.setStyle(MessageStyle.GENERAL);
}
else if (temp_style.equals(“粗體”)) {
att.setStyle(MessageStyle.BOLD);
}
else if (temp_style.equals(“斜體”)) {
att.setStyle(MessageStyle.ITALIC);
}
else if (temp_style.equals(“粗斜體”)) {
att.setStyle(MessageStyle.BOLD_ITALIC);
}
String temp_color = (String) fontColor.getSelectedItem();
if (temp_color.equals(“黑色”)) {
att.setColor(new Color(0, 0, 0));
}
else if (temp_color.equals(“紅色”)) {
att.setColor(new Color(255, 0, 0));
}
else if (temp_color.equals(“藍色”)) {
att.setColor(new Color(0, 0, 255));
}
else if (temp_color.equals(“黃色”)) {
att.setColor(new Color(255, 255, 0));
}
else if (temp_color.equals(“綠色”)) {
att.setColor(new Color(0, 255, 0));
}
String temp_backColor = (String) fontBackColor.getSelectedItem();
if (!temp_backColor.equals(“無色”)) {
if (temp_backColor.equals(“灰色”)) {
att.setBackColor(new Color(200, 200, 200));
}
else if (temp_backColor.equals(“淡紅”)) {
att.setBackColor(new Color(255, 200, 200));
}
else if (temp_backColor.equals(“淡藍”)) {
att.setBackColor(new Color(200, 200, 255));
}
else if (temp_backColor.equals(“淡黃”)) {
att.setBackColor(new Color(255, 255, 200));
}
else if (temp_backColor.equals(“淡綠”)) {
att.setBackColor(new Color(200, 255, 200));
}
}
return att;
}
}
求java版畫圖程序的源代碼
找到了,很久以前寫的一個簡單畫圖,呵呵~當時要求用AWT寫,很難受。
package net.miqiang.gui;
import java.awt.BasicStroke;
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Color;
import java.awt.Cursor;
import java.awt.Dimension;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.GridLayout;
import java.awt.Label;
import java.awt.Panel;
import java.awt.RenderingHints;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.image.BufferedImage;
/**
* 簡單畫圖板程序
* 好久沒用 AWT 了,寫起來真彆扭,如果用 swing 會很舒服,有空再改寫吧。
*
* @author 米強
*
*/
public class TestMain extends Frame {
// 畫板
private Palette palette = null;
// 顯示當前顏色的面板
private Panel nonceColor = null;
// 畫筆粗細
private Label drawWidth = null;
// 畫筆端點的裝飾
private Label drawCap = null;
// 選取顏色按鈕的監聽事件類
private ButtonColorAction buttonColorAction = null;
// 滑鼠進入按鈕後游標樣式的監聽事件類
private ButtonCursor buttonCursor = null;
// 畫筆樣式的監聽事件
private ButtonStrokeAction buttonStrokeAction = null;
/**
* 構造方法
*
*/
public TestMain() {
// 設置標題欄文字
super(“簡易畫圖板”);
// 構造一個畫圖板
palette = new Palette();
Panel pane = new Panel(new GridLayout(2, 1));
// 畫筆顏色選擇器
Panel paneColor = new Panel(new GridLayout(1, 13));
// 12 個顏色選擇按鈕
Button [] buttonColor = new Button[12];
Color [] color = {Color.black, Color.blue, Color.cyan, Color.darkGray, Color.gray, Color.green, Color.magenta, Color.orange, Color.pink, Color.red, Color.white, Color.yellow};
// 顯示當前顏色的面板
nonceColor = new Panel();
nonceColor.setBackground(Color.black);
paneColor.add(nonceColor);
buttonColorAction = new ButtonColorAction();
buttonCursor = new ButtonCursor();
for(int i = 0; i buttonColor.length; i++){
buttonColor[i] = new Button();
buttonColor[i].setBackground(color[i]);
buttonColor[i].addActionListener(buttonColorAction);
buttonColor[i].addMouseListener(buttonCursor);
paneColor.add(buttonColor[i]);
}
pane.add(paneColor);
// 畫筆顏色選擇器
Panel paneStroke = new Panel(new GridLayout(1, 13));
// 控制畫筆樣式
buttonStrokeAction = new ButtonStrokeAction();
Button [] buttonStroke = new Button[11];
buttonStroke[0] = new Button(“1”);
buttonStroke[1] = new Button(“3”);
buttonStroke[2] = new Button(“5”);
buttonStroke[3] = new Button(“7”);
buttonStroke[4] = new Button(“9”);
buttonStroke[5] = new Button(“11”);
buttonStroke[6] = new Button(“13”);
buttonStroke[7] = new Button(“15”);
buttonStroke[8] = new Button(“17”);
buttonStroke[9] = new Button(“■”);
buttonStroke[10] = new Button(“●”);
drawWidth = new Label(“3”, Label.CENTER);
drawCap = new Label(“●”, Label.CENTER);
drawWidth.setBackground(Color.lightGray);
drawCap.setBackground(Color.lightGray);
paneStroke.add(drawWidth);
for(int i = 0; i buttonStroke.length; i++){
paneStroke.add(buttonStroke[i]);
buttonStroke[i].addMouseListener(buttonCursor);
buttonStroke[i].addActionListener(buttonStrokeAction);
if(i = 8){
buttonStroke[i].setName(“width”);
}else{
buttonStroke[i].setName(“cap”);
}
if(i == 8){
paneStroke.add(drawCap);
}
}
pane.add(paneStroke);
// 將畫筆顏色選擇器添加到窗體中
this.add(pane, BorderLayout.NORTH);
// 將畫圖板添加到窗體中
this.add(palette);
// 添加窗口監聽,點擊關閉按鈕時退出程序
this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
// 設置窗體 ICON 圖標
this.setIconImage(Toolkit.getDefaultToolkit().createImage(“images/palette.png”));
// 設置窗口的大小
this.setSize(new Dimension(400, 430));
// 設置窗口位置,處於屏幕正中央
this.setLocationRelativeTo(null);
// 顯示窗口
this.setVisible(true);
}
/**
* 程序入口
*
* @param args
* 字元串數組參數
*/
public static void main(String[] args) {
new TestMain();
}
/**
* 選取顏色按鈕的監聽事件類
* @author 米強
*
*/
class ButtonColorAction implements ActionListener {
public void actionPerformed(ActionEvent e) {
Color color_temp = ((Button)e.getSource()).getBackground();
nonceColor.setBackground(color_temp);
palette.setColor(color_temp);
}
}
/**
* 滑鼠進入按鈕變換游標樣式監聽事件類
* @author 米強
*
*/
class ButtonCursor extends MouseAdapter {
public void mouseEntered(MouseEvent e) {
((Button)e.getSource()).setCursor(new Cursor(Cursor.HAND_CURSOR));
}
public void mouseExited(MouseEvent e) {
((Button)e.getSource()).setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
}
}
/**
* 設置畫筆的監聽事件類
* @author 米強
*
*/
class ButtonStrokeAction implements ActionListener {
public void actionPerformed(ActionEvent e) {
Button button_temp = (Button) e.getSource();
String name = button_temp.getName();
if(name.equalsIgnoreCase(“width”)){
drawWidth.setText(button_temp.getLabel());
palette.setStroke(Float.parseFloat(button_temp.getLabel()));
}else if(name.equalsIgnoreCase(“cap”)){
drawCap.setText(button_temp.getLabel());
if(button_temp.getLabel().equals(“■”)){
palette.setStroke(BasicStroke.CAP_SQUARE);
}else if(button_temp.getLabel().equals(“●”)){
palette.setStroke(BasicStroke.CAP_ROUND);
}
}
}
}
}
/**
* 畫板類
*
* @author 米強
*
*/
class Palette extends Panel implements MouseListener, MouseMotionListener {
// 滑鼠 X 坐標的位置
private int mouseX = 0;
// 上一次 X 坐標位置
private int oldMouseX = 0;
// 滑鼠 Y 坐標的位置
private int mouseY = 0;
// 上一次 Y 坐標位置
private int oldMouseY = 0;
// 畫圖顏色
private Color color = null;
// 畫筆樣式
private BasicStroke stroke = null;
// 緩存圖形
private BufferedImage image = null;
/**
* 構造一個畫板類
*
*/
public Palette() {
this.addMouseListener(this);
this.addMouseMotionListener(this);
// 默認黑色畫筆
color = new Color(0, 0, 0);
// 設置默認畫筆樣式
stroke = new BasicStroke(3.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND);
// 建立 1280 * 1024 的 RGB 緩存圖象
image = new BufferedImage(1280, 1024, BufferedImage.TYPE_INT_RGB);
// 設置顏色
image.getGraphics().setColor(Color.white);
// 畫背景
image.getGraphics().fillRect(0, 0, 1280, 1024);
}
/**
* 重寫 paint 繪圖方法
*/
public void paint(Graphics g) {
super.paint(g);
// 轉換為 Graphics2D
Graphics2D g2d = (Graphics2D) g;
// 獲取緩存圖形 Graphics2D
Graphics2D bg = image.createGraphics();
// 圖形抗鋸齒
bg.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
// 設置繪圖顏色
bg.setColor(color);
// 設置畫筆樣式
bg.setStroke(stroke);
// 畫線,從上一個點到新的點
bg.drawLine(oldMouseX, oldMouseY, mouseX, mouseY);
// 將緩存中的圖形畫到畫板上
g2d.drawImage(image, 0, 0, this);
}
/**
* 重寫 update 方法
*/
public void update(Graphics g) {
this.paint(g);
}
/**
* @return stroke
*/
public BasicStroke getStroke() {
return stroke;
}
/**
* @param stroke 要設置的 stroke
*/
public void setStroke(BasicStroke stroke) {
this.stroke = stroke;
}
/**
* 設置畫筆粗細
* @param width
*/
public void setStroke(float width) {
this.stroke = new BasicStroke(width, stroke.getEndCap(), stroke.getLineJoin());
}
/**
* 設置畫筆端點的裝飾
* @param cap 參考 java.awt.BasicStroke 類靜態欄位
*/
public void setStroke(int cap) {
this.stroke = new BasicStroke(stroke.getLineWidth(), cap, stroke.getLineJoin());
}
/**
* @return color
*/
public Color getColor() {
return color;
}
/**
* @param color 要設置的 color
*/
public void setColor(Color color) {
this.color = color;
}
public void mouseClicked(MouseEvent mouseEvent) {
}
/**
* 滑鼠按下
*/
public void mousePressed(MouseEvent mouseEvent) {
this.oldMouseX = this.mouseX = mouseEvent.getX();
this.oldMouseY = this.mouseY = mouseEvent.getY();
repaint();
}
public void mouseReleased(MouseEvent mouseEvent) {
}
/**
* 滑鼠進入棋盤
*/
public void mouseEntered(MouseEvent mouseEvent) {
this.setCursor(new Cursor(Cursor.CROSSHAIR_CURSOR));
}
/**
* 滑鼠退出棋盤
*/
public void mouseExited(MouseEvent mouseEvent) {
this.setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
}
/**
* 滑鼠拖動
*/
public void mouseDragged(MouseEvent mouseEvent) {
this.oldMouseX = this.mouseX;
this.oldMouseY = this.mouseY;
this.mouseX = mouseEvent.getX();
this.mouseY = mouseEvent.getY();
repaint();
}
public void mouseMoved(MouseEvent mouseEvent) {
}
}
原創文章,作者:B4NCG,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/130775.html