📄 jcolorchoosertest.java
字号:
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.colorchooser.*;
public class JColorChooserTest extends JApplet {
JPanel jPanel1 = new JPanel();
JPanel jPanel2 = new JPanel();
JPanel jPanel3 = new JPanel();
JPanel jPanel4 = new JPanel();
Canvas jPanel5 = new Canvas();//绘图版
JButton jButton1 = new JButton();
JButton jButton2 = new JButton();
JButton jButton3 = new JButton();
JButton jButton4 = new JButton();
JLabel jLabel1 = new JLabel();
JTextField jTextField1 = new JTextField();
JLabel jLabel3= new JLabel();
GridLayout gridLayout1 = new GridLayout();
BorderLayout borderLayout1 = new BorderLayout(10,10);
JColorChooser colorChooser = new JColorChooser();
Color selectedColor;
int mode=0;
public void init() {
try {
myInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
private void myInit() throws Exception {
this.setSize(new Dimension(350, 300));
this.getContentPane().setLayout(new BorderLayout(10,10));
jButton1=new JButton(new ImageIcon("Line.gif"));
jButton2=new JButton(new ImageIcon("Circle.gif"));
jButton3=new JButton(new ImageIcon("Square.gif"));
jButton4=new JButton(new ImageIcon("ColorPanel.gif"));
jLabel1.setText("目前颜色:");
jTextField1.setPreferredSize(new Dimension(250, 25));
jTextField1.setText("Null");
gridLayout1.setColumns(1);
gridLayout1.setHgap(5);
gridLayout1.setRows(4);
gridLayout1.setVgap(5);
jPanel1.setLayout(gridLayout1);
jPanel1.add(jButton1, null);
jPanel1.add(jButton2, null);
jPanel1.add(jButton3, null);
jPanel1.add(jButton4, null);
this.getContentPane().add(jPanel1, BorderLayout.WEST);
jPanel2.setLayout(new FlowLayout());
jPanel2.add(jLabel1, null);
jPanel2.add(jTextField1, null);
this.getContentPane().add(jPanel2, BorderLayout.SOUTH);
jPanel3.setLayout(borderLayout1);
this.getContentPane().add(jPanel3, BorderLayout.CENTER);
jPanel5.setBackground(Color.white);
JScrollPane jsp=new JScrollPane(jPanel5);//制作一scrollpane以承装 绘图版
jPanel3.add(jsp, BorderLayout.CENTER);
JLabel jLabel3=new JLabel("绘图区");
jPanel4.add(jLabel3);
jPanel3.add(jPanel4, BorderLayout.NORTH);
jButton1.addMouseListener(new ButtonMouseListener(this));
jButton2.addMouseListener(new ButtonMouseListener(this));
jButton3.addMouseListener(new ButtonMouseListener(this));
jButton4.addMouseListener(new ButtonMouseListener(this));
}
class ButtonMouseListener implements MouseListener {
public JColorChooserTest japplet=new JColorChooserTest() ;
public ButtonMouseListener(JColorChooserTest japplet1){
this.japplet=japplet1;
}
public void mouseEntered(MouseEvent event) {
}
public void mouseExited(MouseEvent event) {
}
public void mousePressed(MouseEvent event) {
JButton source=(JButton)event.getSource();
if (source==jButton4){
selectedColor = JColorChooser.showDialog(
jButton4, // parent comp
"请选择您喜欢的颜色", // dialog title
getBackground()); // initial color
if(selectedColor == null) {
JOptionPane.showMessageDialog(colorChooser,
"您取消色版的选择了!");
}
else {
repaint();
japplet.jTextField1.setText(selectedColor.toString());
japplet.jTextField1.setBackground(selectedColor);
JOptionPane.showMessageDialog(colorChooser,
"您所选的颜色:" + selectedColor);
}
}
}
public void mouseClicked (MouseEvent event) {
JButton source=(JButton)event.getSource();
if (source==jButton1){
mode=1;
jPanel5.repaint();
}
if (source==jButton2){
mode=2;
jPanel5.repaint();
}
if (source==jButton3){
mode=3;
jPanel5.repaint();
}
}
public void mouseReleased(MouseEvent event) {
}
}
class Canvas extends JPanel {
public void paintComponent(Graphics g) {
super.paintComponent(g);
Dimension size = getSize();
g.setColor(selectedColor);
if (mode==1){
g.drawLine(40,40,size.width,size.height);
}
if (mode==2){
g.drawOval(30,50,50,30);
}
if (mode==3){
g.drawRect(40,40,150,50);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -