📄 drawpanel.java
字号:
package DrawPlat;
import javax.swing.*;
import java.awt.*;
class DrawPanel extends JPanel{
private DrawPlat mdp;
private drawings[] itemList; //用来存放基本图形的数组
private int index ;
Image offScreenImage = null;
public DrawPanel(DrawPlat mdp) {
this.mdp = mdp;
this.setSize(mdp.WIDTH, mdp.HEIGHT);
index = mdp.index;
itemList = mdp.itemList;
this.setCursor(Cursor.getPredefinedCursor(Cursor.CROSSHAIR_CURSOR));
this.setBackground(Color.white);
this.addMouseListener(new mouseA(mdp));
this.addMouseMotionListener(new mouseB(mdp));
new Thread( new PaintThread()).start();
}
private class PaintThread extends Thread {
public void run() {
while(true) {
paintComponent(mdp.drawingArea.getGraphics());
repaint();
// mdp.repaint();
try {
Thread.sleep(50);
} catch (InterruptedException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
} catch(NullPointerException npe) {
} catch(Exception ee) {
}
}
} //run
} //PaintThread
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2d = (Graphics2D)g; //定义画笔
int j = 0;
while(j <= index) {
draw(g2d,itemList[j]);
j++;
}
}
void draw(Graphics2D g2d,drawings i){
i.draw(g2d);
}
}//DrawPanel
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -