ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • C# 리스트박스 개별 색깔넣기 GDI 사용
    .NET/GDI + 2008. 11. 18. 10:05
    반응형
    using System;
    using System.Collections.Generic;
    using System.Text;
    using System.Windows.Forms;
    using System.Drawing;

    namespace GDIexam_02
    {
    class GDI02 : Form
    {
    ListBox lb = null;

    public GDI02()
    {
    this.Text = "리스트박스 예제";
    lb = new ListBox();
    lb.SetBounds(100, 100, 80, 100);

    this.Controls.Add(lb);

    lb.Items.Add("사과"); //0
    lb.Items.Add("포도"); //1
    lb.Items.Add("수박"); //2

    lb.DrawItem += new DrawItemEventHandler(lb_DrawItem);
    lb.MeasureItem += new MeasureItemEventHandler(lb_MeasureItem);
    this.Controls.Add(lb);

    this.Load += new EventHandler(GDI02_Load);
    }

    static void Main(string[] args)
    {
    Form f = new Form();
    Application.Run(new GDI02());
    }
    private void GDI02_Load(object sender, EventArgs e)
    {
    lb.DrawMode = DrawMode.OwnerDrawVariable;
    }
    private void lb_DrawItem(object sender, DrawItemEventArgs e)
    {
    Graphics g = e.Graphics;
    Brush brush = Brushes.Aqua;
    switch(e.Index)
    {
    case 0:
    brush = Brushes.Red;
    break;
    case 1:
    brush = Brushes.Violet;
    break;
    case 2:
    brush = Brushes.Gray;
    break;
    default:
    break;
    }
    g.DrawString(lb.Items[e.Index].ToString(), e.Font,brush,e.Bounds, StringFormat.GenericDefault);
    g.Dispose();
    }
    private void lb_MeasureItem(object sender, MeasureItemEventArgs e)
    {
    }
    }
    }

    반응형

    '.NET > GDI +' 카테고리의 다른 글

    GDI + 비트맵 이미지 저장 관련 예제  (0) 2008.12.12
    GDI + 네이버 지식인 그림 저장하며 그리기 예제  (0) 2008.12.11
    C# "GDI폴리곤";  (0) 2008.11.18
    C# GDI32 GDI plus  (0) 2008.11.18

    댓글

Designed by Tistory.