?? 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 + -