Board logo

標題: Color 類別 [打印本頁]

作者: tonyh    時間: 2016-9-24 13:52     標題: Color 類別

本帖最後由 tonyh 於 2017-9-22 19:58 編輯

試使用 setBackground() 方法為元件(或容器)設定背景顏色,
以及 setForeground() 方法為元件(或容器)設定前景顏色(即文字的顏色).

P.S. 背景色僅在元件是不透明時才可使用, 因此部分元件或容器無法設定背景色, 譬如 JLabel 及 JFrame 就無法 setBackground()

個元件之顏色設定參考:
btn[0].setBackground(Color.BLUE);
btn[0].setForeground(Color.YELLOW);
btn[1].setBackground(Color.RED);
btn[1].setForeground(Color.WHITE);
btn[2].setBackground(Color.DARK_GRAY);
btn[2].setForeground(Color.GREEN);
btn[3].setBackground(Color.PINK);
btn[3].setForeground(Color.BLUE);                       
pn1.setBackground(Color.CYAN);
pn2.setBackground(new Color(190,255,0));

[attach]1761[/attach]
  1. import javax.swing.JFrame;
  2. import javax.swing.JButton;
  3. import javax.swing.JPanel;
  4. import java.awt.GridLayout;
  5. import javax.swing.border.EtchedBorder;
  6. import javax.swing.border.TitledBorder;
  7. import javax.swing.border.LineBorder;
  8. import java.awt.Color;
  9. public class Ch118 {
  10.        
  11.         JPanel pn1,pn2,pn3;
  12.         JButton btn[]=new JButton[4];
  13.         JFrame fm;

  14.         Ch118()
  15.         {
  16.                 for(int i=0; i<4; i++)
  17.                     btn[i]=new JButton("按鈕"+(i+1));
  18.                 btn[0].setBackground(Color.BLUE);
  19.                 btn[0].setForeground(Color.YELLOW);
  20.                 btn[1].setBackground(Color.RED);
  21.                 btn[1].setForeground(Color.WHITE);
  22.                 btn[2].setBackground(Color.DARK_GRAY);
  23.                 btn[2].setForeground(Color.GREEN);
  24.                 btn[3].setBackground(Color.PINK);
  25.                 btn[3].setForeground(Color.BLUE);
  26.                        
  27.         pn1=new JPanel();
  28.         pn1.setBorder(new EtchedBorder());
  29.         pn1.setBackground(Color.CYAN);
  30.         pn2=new JPanel();
  31.         pn2.setBackground(new Color(190,255,0));
  32.         pn2.setLayout(new GridLayout(4,1,5,5));
  33.         pn2.setBorder(new TitledBorder("第二區"));
  34.         
  35.         pn3=new JPanel();
  36.         pn3.setBorder(new TitledBorder(new LineBorder(Color.RED,2),"第三區",TitledBorder.CENTER,TitledBorder.BOTTOM,null,Color.RED));
  37.         pn3.setLayout(new GridLayout(4,1,5,5));
  38.         for(int i=0; i<4; i++)
  39.                 pn3.add(btn[i]);
  40.                
  41.                 fm=new JFrame("Color 類別");
  42.                 fm.setBounds(100, 100, 450, 300);
  43.                 fm.setVisible(true);
  44.                 fm.setResizable(true);
  45.                 fm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  46.                 fm.setLayout(new GridLayout());
  47.                 fm.add(pn1);
  48.                 fm.add(pn2);
  49.                 fm.add(pn3);
  50.         }
  51.        
  52.         public static void main(String[] args) {
  53.                 new Ch118();
  54.         }
  55. }
複製代碼

作者: 張峻瑋    時間: 2016-9-24 16:46

本帖最後由 張峻瑋 於 2016-9-24 16:57 編輯
  1. import javax.swing.*;
  2. import java.awt.Color;
  3. import java.awt.GridLayout;
  4. import javax.swing.border.EtchedBorder;
  5. import javax.swing.border.TitledBorder;
  6. import javax.swing.border.LineBorder;
  7. public class Ch118 {
  8.         JFrame fm;
  9.         JButton btn[]=new JButton[4];
  10.         JPanel pn1,pn2,pn3;
  11.         Ch118()
  12.         {
  13.             for(int i=0; i<4; i++)
  14.                 btn[i]=new JButton("按鈕"+(i+1));
  15.             btn[0].setBackground(Color.GREEN);
  16.             btn[0].setForeground(Color.BLUE);
  17.             btn[1].setBackground(Color.CYAN);
  18.             btn[1].setForeground(Color.DARK_GRAY);
  19.             btn[2].setBackground(Color.MAGENTA);
  20.             btn[2].setForeground(Color.ORANGE);
  21.             btn[3].setBackground(Color.YELLOW);
  22.             btn[3].setForeground(Color.WHITE);
  23.             pn1=new JPanel();
  24.             pn1.setBorder(new EtchedBorder());
  25.             pn1.setBackground(Color.LIGHT_GRAY);
  26.             pn2=new JPanel();
  27.             pn2.setBorder(new TitledBorder("第二區"));
  28.             pn2.setBackground(new Color(45,80,240));
  29.             pn3=new JPanel();
  30.             pn3.setBorder(new TitledBorder(new LineBorder(Color.RED,25,true),"第三區",TitledBorder.CENTER,TitledBorder.BOTTOM,null,Color.RED));
  31.             pn3.setLayout(new GridLayout(4,1,5,5));
  32.             for(int i=0; i<4; i++)
  33.                 pn3.add(btn[i]);
  34.             fm=new JFrame("Color 類別");
  35.             fm.setBounds(100, 100, 450, 300);
  36.             fm.setVisible(true);
  37.             fm.setResizable(true);
  38.             fm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  39.             fm.setLayout(new GridLayout());
  40.             fm.add(pn1);
  41.             fm.add(pn2);
  42.             fm.add(pn3);
  43.         }
  44.         public static void main(String[] args) {
  45.             new Ch118();
  46.         }
  47. }
複製代碼

作者: 劉得恩    時間: 2016-9-24 16:56

  1. import javax.swing.*;
  2. import java.awt.*;
  3. import javax.swing.border.EtchedBorder;
  4. import javax.swing.border.TitledBorder;
  5. import javax.swing.border.LineBorder;
  6. public class Ch118 {
  7.          private JFrame f;
  8.          private JButton btn[]=new JButton[4];
  9.          private JPanel p1,p2,p3;
  10.         Ch118()
  11.         {
  12.            for(int i=0;i<4;i++)
  13.                   btn[i]=new JButton("按鈕"+(i+1));
  14.            btn[0].setBackground(Color.BLUE);
  15.            btn[0].setForeground(Color.YELLOW);
  16.            btn[1].setBackground(Color.RED);
  17.            btn[1].setForeground(Color.WHITE);
  18.            btn[2].setBackground(Color.DARK_GRAY);
  19.            btn[2].setForeground(Color.GREEN);
  20.            btn[3].setBackground(Color.PINK);
  21.            btn[3].setForeground(Color.BLUE);
  22.            p1=new JPanel();
  23.            p1.setBorder(new EtchedBorder());
  24.            p1.setBackground(Color.CYAN);
  25.            p2=new JPanel();
  26.            p2.setBorder(new TitledBorder("第二區"));
  27.            p2.setBackground(new Color(190,255,0));

  28.            p3=new JPanel();
  29.            p3.setLayout(new GridLayout(4,1,5,5));
  30.            p3.setBorder(new TitledBorder(new LineBorder(Color.RED,2),"第三區",TitledBorder.CENTER,TitledBorder.BOTTOM,null,Color.RED));
  31.            for(JButton i:btn)
  32.                   p3.add(i);
  33.                         
  34.            f=new JFrame("\u30df\udcef");
  35.            f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  36.            f.setResizable(true);
  37.            f.setVisible(true);
  38.            f.setBounds(100,100,300,200);
  39.            f.setLayout(new GridLayout());
  40.            f.add(p1);
  41.            f.add(p2);
  42.            f.add(p3);
  43.         }
  44.         public static void main(String[] args) {
  45.                 new Ch118();

  46.         }

  47. }
複製代碼

作者: 李允軒    時間: 2016-9-24 16:56

  1. import javax.swing.JFrame;
  2. import javax.swing.JButton;
  3. import javax.swing.JPanel;
  4. import java.awt.GridLayout;
  5. import javax.swing.border.EtchedBorder;
  6. import javax.swing.border.TitledBorder;
  7. import javax.swing.border.LineBorder;
  8. import java.awt.Color;
  9. public class Ch01 {
  10.         
  11.         JPanel pn1,pn2,pn3;
  12.         JButton btn[]=new JButton[4];
  13.         JFrame fm;

  14.         Ch01()
  15.         {
  16.                 for(int i=0; i<4; i++)
  17.                         btn[i]=new JButton("按鈕"+(i+1));
  18.             
  19.                 btn[0].setBackground(Color.BLUE);
  20.                 btn[0].setForeground(Color.YELLOW);
  21.                 btn[1].setBackground(Color.RED);
  22.                 btn[1].setForeground(Color.WHITE);
  23.                 btn[2].setBackground(Color.DARK_GRAY);
  24.                 btn[2].setForeground(Color.GREEN);
  25.                 btn[3].setBackground(Color.PINK);
  26.                 btn[3].setForeground(Color.BLUE);
  27.                
  28.                 pn1=new JPanel();
  29.                 pn1.setBorder(new EtchedBorder());
  30.                 pn1.setBackground(Color.CYAN);
  31.                 pn2=new JPanel();
  32.                 pn2.setBorder(new TitledBorder("第二區"));
  33.                 pn2.setBackground(Color.ORANGE);
  34.                 pn3=new JPanel();
  35.                 pn3.setBorder(new TitledBorder(new LineBorder(Color.RED,2),"第三區",TitledBorder.CENTER,TitledBorder.BOTTOM,null,Color.RED));
  36.                 pn3.setLayout(new GridLayout(4,1,5,5));
  37.                 for(int i=0; i<4; i++)
  38.                 pn3.add(btn[i]);
  39.                
  40.                 fm=new JFrame("JPanel & setBorder()");
  41.                 fm.setBounds(100, 100, 450, 300);
  42.                 fm.setVisible(true);
  43.                 fm.setResizable(true);
  44.                 fm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  45.                 fm.setLayout(new GridLayout());
  46.                 fm.add(pn1);
  47.                 fm.add(pn2);
  48.                 fm.add(pn3);
  49.         }
  50.         
  51.         public static void main(String[] args) {
  52.                 new Ch01();
  53.         }
  54. }
複製代碼

作者: 林宇翔    時間: 2016-9-24 16:57

  1. import javax.swing.JFrame;
  2. import javax.swing.JButton;
  3. import javax.swing.JPanel;
  4. import java.awt.GridLayout;
  5. import javax.swing.border.EtchedBorder;
  6. import javax.swing.border.TitledBorder;
  7. import javax.swing.border.LineBorder;
  8. import java.awt.Color;
  9. public class Ch118 {
  10.         
  11.         JPanel pn1,pn2,pn3;
  12.         JButton btn[]=new JButton[4];
  13.         JFrame fm;

  14.         Ch118()
  15.         {
  16.                 for(int i=0; i<4; i++)
  17.                     btn[i]=new JButton("按鈕"+(i+1));
  18.                 btn[0].setBackground(Color.BLUE);
  19.                 btn[0].setForeground(Color.YELLOW);
  20.                 btn[1].setBackground(Color.RED);
  21.                 btn[1].setForeground(Color.WHITE);
  22.                 btn[2].setBackground(Color.DARK_GRAY);
  23.                 btn[2].setForeground(Color.GREEN);
  24.                 btn[3].setBackground(Color.PINK);
  25.                 btn[3].setForeground(Color.BLUE);
  26.                         
  27.         pn1=new JPanel();
  28.         pn1.setBorder(new EtchedBorder());
  29.         pn1.setBackground(Color.CYAN);
  30.         pn2=new JPanel();
  31.         pn2.setBackground(new Color(190,255,0));
  32.         pn2.setLayout(new GridLayout(4,1,5,5));
  33.         pn2.setBorder(new TitledBorder("第二區"));
  34.         
  35.         pn3=new JPanel();
  36.         pn3.setBorder(new TitledBorder(new LineBorder(Color.RED,2),"第三區",TitledBorder.CENTER,TitledBorder.BOTTOM,null,Color.RED));
  37.         pn3.setLayout(new GridLayout(4,1,5,5));
  38.         for(int i=0; i<4; i++)
  39.                 pn3.add(btn[i]);
  40.                
  41.                 fm=new JFrame("JPanel & setBorder()");
  42.                 fm.setBounds(100, 100, 450, 300);
  43.                 fm.setVisible(true);
  44.                 fm.setResizable(true);
  45.                 fm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  46.                 fm.setLayout(new GridLayout());
  47.                 fm.add(pn1);
  48.                 fm.add(pn2);
  49.                 fm.add(pn3);
  50.         }
  51.         
  52.         public static void main(String[] args) {
  53.                 new Ch118();
  54.         }
  55. }
複製代碼

作者: 張彥承    時間: 2016-9-24 16:59

  1. import javax.swing.JFrame;
  2. import javax.swing.JButton;
  3. import javax.swing.JPanel;
  4. import java.awt.GridLayout;
  5. import javax.swing.border.EtchedBorder;
  6. import javax.swing.border.TitledBorder;
  7. import javax.swing.border.LineBorder;
  8. import java.awt.Color;
  9. public class Ch100{
  10.         
  11.         JPanel pn1,pn2,pn3;
  12.         JButton btn[]=new JButton[4];
  13.         JFrame fm;

  14.         Ch100()
  15.         {
  16.                 for(int i=0; i<4; i++)
  17.                     btn[i]=new JButton("按鈕"+(i+1));
  18.                 btn[0].setBackground(Color.BLUE);
  19.                   btn[0].setForeground(Color.YELLOW);
  20.                 btn[1].setBackground(Color.RED);
  21.                 btn[1].setForeground(Color.WHITE);
  22.               btn[2].setBackground(Color.DARK_GRAY);
  23.                 btn[2].setForeground(Color.GREEN);
  24.                 btn[3].setBackground(Color.PINK);
  25.                 btn[3].setForeground(Color.BLUE);
  26.                         
  27.         pn1=new JPanel();
  28.         pn1.setBorder(new EtchedBorder());
  29.         pn1.setBackground(Color.CYAN);
  30.         pn2=new JPanel();
  31.         pn2.setBackground(new Color(190,255,0));
  32.         pn2.setLayout(new GridLayout(4,1,5,5));
  33.         pn2.setBorder(new TitledBorder("第二區"));
  34.         
  35.         pn3=new JPanel();
  36.         pn3.setBorder(new TitledBorder(new LineBorder(Color.RED,2),"第三區",TitledBorder.CENTER,TitledBorder.BOTTOM,null,Color.RED));
  37.         pn3.setLayout(new GridLayout(4,1,5,5));
  38.         for(int i=0; i<4; i++)
  39.                 pn3.add(btn[i]);
  40.                
  41.                 fm=new JFrame("Color 類別");
  42.                 fm.setBounds(100, 100, 450, 300);
  43.                 fm.setVisible(true);
  44.                 fm.setResizable(true);
  45.                 fm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  46.                 fm.setLayout(new GridLayout());
  47.                 fm.add(pn1);
  48.                 fm.add(pn2);
  49.                 fm.add(pn3);
  50.         }
  51.         
  52.         public static void main(String[] args) {
  53.                 new Ch100();
  54.         }
  55. }
複製代碼





歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/) Powered by Discuz! 7.2