Java by API/java.awt/Color

Материал из Java эксперт
Версия от 17:31, 31 мая 2010; Admin (обсуждение | вклад) (1 версия)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Color: equals(Object obj)

   <source lang="java">
 

import java.awt.Color; public class Main {

 public static void main(String[] a) {
   Color myBlack = new Color(0, 0, 0); // Color black
   Color myWhite = new Color(255, 255, 255); // Color white
   System.out.println(myBlack.equals(myWhite));
 }

}


 </source>
   
  
 
  



Color: getComponents(float[] compArray)

   <source lang="java">
 

import java.awt.Color; import java.awt.image.ColorModel; import java.awt.image.IndexColorModel; public class Main {

 public static void main(String[] args) {
   byte ff = (byte) 0xff;
   byte[] r = { ff, 0, 0, ff, 0 };
   byte[] g = { 0, ff, 0, ff, 0 };
   byte[] b = { 0, 0, ff, ff, 0 };
   ColorModel cm = new IndexColorModel(3, 5, r, g, b);
   Color[] colors = { new Color(255, 0, 0), new Color(0, 255, 0),
       new Color(0, 0, 255), new Color(64, 255, 64),
       new Color(255, 255, 0), new Color(0, 255, 255) };
   for (int i = 0; i < colors.length; i++) {
     float[] normalizedComponents = colors[i].getComponents(null);
     int[] unnormalizedComponents = cm.getUnnormalizedComponents(
         normalizedComponents, 0, null, 0);
     int rgb = colors[i].getRGB();
     Object pixel = cm.getDataElements(rgb, null);
     System.out.println(colors[i] + " -> " + ((byte[]) pixel)[0]);
   }
   for (byte i = 0; i < 5; i++) {
     int[] unnormalizedComponents = cm.getComponents(i, null, 0);
     System.out.print(i + " -> unnormalized components");
     for (int j = 0; j < unnormalizedComponents.length; j++)
       System.out.print(" " + unnormalizedComponents[j]);
     System.out.println();
   }
 }

}


 </source>
   
  
 
  



Color: getRGB()

   <source lang="java">
  

import java.awt.Color; import java.awt.image.ColorModel; import java.awt.image.IndexColorModel; public class MainClass {

 public static void main(String[] args) throws Exception {
   byte ff = (byte) 0xff;
   byte[] r = { ff, 0, 0, ff, 0 };
   byte[] g = { 0, ff, 0, ff, 0 };
   byte[] b = { 0, 0, ff, ff, 0 };
   ColorModel cm = new IndexColorModel(3, 5, r, g, b);
   Color[] colors = { new Color(255, 0, 0), new Color(0, 255, 0), new Color(0, 0, 255)};
   for (int i = 0; i < colors.length; i++) {
     int rgb = colors[i].getRGB();
     Object pixel = cm.getDataElements(rgb, null);
     System.out.println(colors[i] + " -> " + ((byte[]) pixel)[0]);
   }
   for (byte i = 0; i < 5; i++) {
     int[] unnormalizedComponents = cm.getComponents(i, null, 0);
     System.out.print(i + " -> unnormalized components");
     for (int j = 0; j < unnormalizedComponents.length; j++)
       System.out.print(" " + unnormalizedComponents[j]);
     System.out.println();
   }
 }

}



 </source>
   
  
 
  



Color.GRAY

   <source lang="java">
  

import java.awt.Color; import java.awt.FlowLayout; import java.awt.Font; import javax.swing.JFrame; import javax.swing.JLabel; public class Main {

 public static void main(String[] args) {
   JFrame.setDefaultLookAndFeelDecorated(true);
   JFrame frame = new JFrame();
   frame.setTitle("JLabel Test");
   frame.setLayout(new FlowLayout());
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   JLabel label = new JLabel("First Name");
   label.setFont(new Font("Courier New", Font.ITALIC, 12));
   label.setForeground(Color.GRAY);
   frame.add(label);
   frame.pack();
   frame.setVisible(true);
 }

}


 </source>
   
  
 
  



Color: HSBtoRGB(float hue,float saturation,float brightness)

   <source lang="java">
  

import java.awt.Color; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; public class MainClass extends JPanel {

 public void paint(Graphics g) {
   int n = 3;
   int xdata[] = new int[n];
   int ydata[] = new int[n];
   xdata[0] = 50;
   ydata[0] = 150;
   xdata[1] = 200;
   ydata[1] = 50;
   xdata[2] = 350;
   ydata[2] = 150;
   int rgb = Color.HSBtoRGB(1.0f, 1.0f, 1.0f);
   g.setColor(new Color(rgb));
   g.fillPolygon(xdata, ydata, n);
 }
 public static void main(String[] args) {
   JFrame frame = new JFrame();
   frame.getContentPane().add(new MainClass());
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   frame.setSize(200, 200);
   frame.setVisible(true);
 }

}



 </source>
   
  
 
  



Color.lightGray

   <source lang="java">
  

import java.awt.Color; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; public class MainClass extends JPanel {

 Color colors[] = { Color.black, Color.blue, Color.cyan, Color.darkGray,
     Color.gray, Color.green, Color.lightGray, Color.magenta, Color.orange,
     Color.pink, Color.red, Color.white, Color.yellow };
 public void paint(Graphics g) {
   int deltax = 260 / colors.length;
   for (int i = 0; i < colors.length; i++) {
     g.setColor(colors[i]);
     g.fillRect(i * deltax, 0, (i + 1) * deltax, 260);
   }
 }
 public static void main(String[] args) {
   JFrame frame = new JFrame();
   frame.getContentPane().add(new MainClass());
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   frame.setSize(200, 200);
   frame.setVisible(true);
 }

}



 </source>
   
  
 
  



Color.magenta

   <source lang="java">
  

import java.awt.Color; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; public class MainClass extends JPanel {

 Color colors[] = { Color.black, Color.blue, Color.cyan, Color.darkGray,
     Color.gray, Color.green, Color.lightGray, Color.magenta, Color.orange,
     Color.pink, Color.red, Color.white, Color.yellow };
 public void paint(Graphics g) {
   int deltax = 260 / colors.length;
   for (int i = 0; i < colors.length; i++) {
     g.setColor(colors[i]);
     g.fillRect(i * deltax, 0, (i + 1) * deltax, 260);
   }
 }
 public static void main(String[] args) {
   JFrame frame = new JFrame();
   frame.getContentPane().add(new MainClass());
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   frame.setSize(200, 200);
   frame.setVisible(true);
 }

}



 </source>
   
  
 
  



Color.pink

   <source lang="java">
  

import java.awt.Color; import java.awt.Graphics; import javax.swing.JFrame; import javax.swing.JPanel; public class MainClass extends JPanel {

 Color colors[] = { Color.black, Color.blue, Color.cyan, Color.darkGray,
     Color.gray, Color.green, Color.lightGray, Color.magenta, Color.orange,
     Color.pink, Color.red, Color.white, Color.yellow };
 public void paint(Graphics g) {
   int deltax = 260 / colors.length;
   for (int i = 0; i < colors.length; i++) {
     g.setColor(colors[i]);
     g.fillRect(i * deltax, 0, (i + 1) * deltax, 260);
   }
 }
 public static void main(String[] args) {
   JFrame frame = new JFrame();
   frame.getContentPane().add(new MainClass());
   frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   frame.setSize(200, 200);
   frame.setVisible(true);
 }

}



 </source>
   
  
 
  



Color: RGBtoHSB(int r, int g, int b, float[] hsbvals)

   <source lang="java">
 

import java.awt.Color; public class Main {

 public static void main() {
   int red = 23;
   int green = 66;
   int blue = 99;
   float[] hsb = Color.RGBtoHSB(red, green, blue, null);
   float hue = hsb[0]; 
   float saturation = hsb[1];
   float brightness = hsb[2];
 }

}


 </source>
   
  
 
  



new Color(int rgb)

   <source lang="java">
 

import java.awt.Color; import java.awt.Graphics; import javax.swing.JComponent; import javax.swing.JFrame; class MyCanvas extends JComponent {

 Color[] colors = new Color[24];
 public MyCanvas() {
   int  rgb = 0xff;
   for (int i = 0; i < 24; i++) {
     colors[i] = new Color(rgb);
     rgb <<= 1;
     if ((rgb & 0x1000000) != 0) {
       rgb |= 1;
       rgb &= 0xffffff;
     }
   }
 }
 public void paint(Graphics g) {
   int i = 10;
   for (Color c : colors) {
     g.setColor(c);
     i += 10;
     g.drawLine(i, 10, 200, 200);
   }
 }

} public class Main {

 public static void main(String[] a) {
   JFrame window = new JFrame();
   window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   window.setBounds(30, 30, 300, 300);
   window.getContentPane().add(new MyCanvas());
   window.setVisible(true);
 }

}


 </source>
   
  
 
  



new Color(int r, int g, int b)

   <source lang="java">
 

import java.awt.BorderLayout; import java.awt.Color; import javax.swing.JButton; import javax.swing.JFrame; public class Main {

 public static void main(String args[]) {
   JFrame f = new JFrame("JColorChooser Sample");
   f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   final JButton button = new JButton("Pick to Change Background");
   Color myBlack = new Color(0,0,0);           // Color black

// Color myWhite = new Color(255,255,255); // Color white

 //  Color myGreen = new Color(0,200,0);         // A shade of green
   
   button.setBackground(myBlack);
   f.add(button, BorderLayout.CENTER);
   f.setSize(300, 200);
   f.setVisible(true);
 }

}


 </source>