Known Colors : Color « 2D Graphics « C# / C Sharp






Known Colors

Known Colors
   
/*
Professional Windows GUI Programming Using C#
by Jay Glynn, Csaba Torok, Richard Conway, Wahid Choudhury, 
   Zach Greenvoss, Shripad Kulkarni, Neil Whitlow

Publisher: Peer Information
ISBN: 1861007663
*/
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;

namespace KnownColors
{
    /// <summary>
    /// Summary description for KnownColors.
    /// </summary>
    public class KnownColors : System.Windows.Forms.Form
    {
        private System.Windows.Forms.ComboBox comboBox1;
        /// <summary>
        /// Required designer variable.
        /// </summary>
        private System.ComponentModel.Container components = null;

        ArrayList cAL;
        ArrayList cNAL;

        public KnownColors()
        {
            //
            // Required for Windows Form Designer support
            //
            InitializeComponent();
            
            this.Text = "Known non-system colors";
            
            cAL = new ArrayList();      // colors
            cNAL = new ArrayList();      // strings
            NonSystemColors(cAL, cNAL);
            this.comboBox1.Sorted = true;
            this.comboBox1.DataSource = cNAL; //set the combo's data source

            //
            // TODO: Add any constructor code after InitializeComponent call
            //
        }

        /// <summary>
        /// Clean up any resources being used.
        /// </summary>
        protected override void Dispose( bool disposing )
        {
            if( disposing )
            {
                if (components != null) 
                {
                    components.Dispose();
                }
            }
            base.Dispose( disposing );
        }

        #region Windows Form Designer generated code
        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        private void InitializeComponent()
        {
            this.comboBox1 = new System.Windows.Forms.ComboBox();
            this.SuspendLayout();
            // 
            // comboBox1
            // 
            this.comboBox1.Location = new System.Drawing.Point(8, 8);
            this.comboBox1.Name = "comboBox1";
            this.comboBox1.Size = new System.Drawing.Size(121, 21);
            this.comboBox1.TabIndex = 0;
            this.comboBox1.Text = "comboBox1";
            // 
            // KnownColors
            // 
            this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
            this.ClientSize = new System.Drawing.Size(292, 266);
            this.Controls.AddRange(new System.Windows.Forms.Control[] {
                                                                          this.comboBox1});
            this.Name = "KnownColors";
            this.Text = "KnownColors";
            this.ResumeLayout(false);

        }
        #endregion

        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main() 
        {
            Application.Run(new KnownColors());
        }
        private void NonSystemColors(ArrayList cAL, ArrayList cNAL)
        {
            Array cA = Enum.GetValues(typeof(KnownColor));
            foreach(KnownColor knwnC in cA)  // cX.Length = 167
            {
                Color curC = Color.FromKnownColor(knwnC); 
                if(!curC.IsSystemColor) 
                {
                    cAL.Add(curC);
                    cNAL.Add(curC.Name.ToString());
                }
            }
        }
        protected override void OnPaint(PaintEventArgs pea)
        {
            Graphics g = pea.Graphics;
            int wi = 70, hi = 12, rectNb = 8; 
            int cALNb = cAL.Count;

            this.Width = (wi +2)*rectNb + 9;
            int y = (int)(cALNb / rectNb);
            this.Height = y*(2 + hi) + 60;

            DisplayKnownColors(g, cALNb, wi, hi, rectNb);
            g.Dispose();
        }
        private void DisplayKnownColors(Graphics g, int cALNb, int wi, int hi, int rectNb)
        {
            Rectangle rec;
            Pen p = new Pen(this.ForeColor);
            Brush b;

            StringFormat strfmt = new StringFormat();
            strfmt.LineAlignment = strfmt.Alignment = StringAlignment.Near;

            int x, y;
            for (int i = 0; i < cALNb; i++)
            {
                x = (int)(i % rectNb);
                y = (int)(i / rectNb);
                rec = new Rectangle(1 + x*(2 + wi), 1 + y*(2 + hi), wi, hi);

                g.DrawRectangle(p, rec);
                b  = new SolidBrush((Color)cAL[i]);
                g.FillRectangle(b, rec);

                b  = new SolidBrush(Color.Black);
                g.DrawString((string)cNAL[i], this.Font, b, rec, strfmt);
            }
            x = (int)(cALNb % rectNb);
            y = (int)(cALNb / rectNb);
            this.comboBox1.Location = new Point(x*(wi + 2) + 2, y*(2 + hi) + 2);
        }
    }
}


           
         
    
    
  








Related examples in the same category

1.Transparent colorTransparent color
2.List all known color in a systemList all known color in a system
3.Draw each of 100 cells with randomly chosen colorsDraw each of 100 cells with randomly chosen colors
4.Filled with the semi transparent and transparent colorFilled with the semi transparent and transparent color
5.All the colors that are supported in C# according
6.Color ChangerColor Changer
7.Five yellow squares with different alpha values(Transparensy)
8.Create two color instances with different alpha components
9.Color.Chocolate
10.Use Color.FromArgb to create Color
11.Get all known color
12.Color representation in r,g,b with values [0.0 - 1.0].
13.Color representation in h,s,v with h = [0 - 360], s,v = [0.0 - 1.0].
14.Return a randomly-generated color
15.Color to RGB value
16.Get color outof String
17.Parse Color
18.Color To Rgb
19.Rgb To Color
20.Returns an HTML #XXXXXX format for a color.
21.Convert color name to Color object
22.Hex Color Util
23.Helper method to get a color based on it's string value
24.Converts a color string to a hex value string
25.Color to Hue,Lightness,Saturation value
26.Get Color From String
27.Convert String value To Color
28.Color to String
29.Masks an image and returns a two color bitmap.
30.Convert Hex To Color
31.Create Color From HLS value
32.Parse Color with Color.FromArgb
33.Create Color Object from RGB value
34.Get Rainbow Colors
35.Convert RGB to HSL
36.HSL to RGB conversion.
37.Hsv To Rgb
38.Rgb Linear Interpolate
39.Get Luminance
40.To Grey scale
41.Heat Map background colour calculations