본문 바로가기
개발 이야기/C# 이야기

C# ColorDialog 기본 예제

by 런던살자 2019. 6. 24.

안녕하세요 마블랑입니다.

 

C#에는 기본적으로 제공되는 컨트롤 등이 많이 있습니다.

 

이러한 컨트롤들만 이용하여 프로세스를 개발해도 될정도로 잘 구현되어 있다고 생각하는데요

 

그 중 하나인 색상 선택 컨트롤인 ColorDialog에 대해서 알아보도록 하겠습니다.

 

 

일반적으로 그림판에서 색상은 선택할때 보여지는 아래 화면을 자신이 구현한 프로세스에서 사용할수 있습니다.

 

 

예제 프로그램을 보면 '색 선택' 버튼을 클릭하였을때 색상을 선택하면 왼쪽 Panel에 색상이 표시되고 

 

선택한 색의 RGB값이 아래에 텍스트 박스로 표시되는 프로세스 입니다.

코드는 아래와 같습니다.

 

using System;
using System.Windows.Forms;

namespace WindowsForms_Test_003
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Bt_Color_Click(object sender, EventArgs e)
        {
            if (colorDialog1.ShowDialog() == DialogResult.OK) {
                panel1.BackColor = colorDialog1.Color;

                tb_Red.Text = colorDialog1.Color.R.ToString();
                tb_Green.Text = colorDialog1.Color.G.ToString();
                tb_Blue.Text = colorDialog1.Color.B.ToString();

            }
        }
    }
}

 

ColorDialog를 동적으로 생성을 해줘도 되지만 마블랑은 도구 화면에서 추가를 시켜주었습니다. (코드 수가 많은것을 별로 좋아하지 않기 때문에... ^^) 

 

그리고 버튼을 하나 추가한 뒤에 버튼을 클릭하면 showDialog()를 통해 색상선택 화면이 표시가 되게 하였습니다.

 

또한 OK를 눌렀을때만 적용되게 하기 위해 DialogResult.OK를 추가하였습니다.

 

색상 적용 부분은 조건문 안을 보시면 됩니다.

 

 

ColorDialog를 통해 그림판 프로세스나 프로세스의 화면 색상을 변경해주는 환경설정을 구현하려고 할때 유용하게 쓰일듯 싶습니다.

 

 

이상 마블랑이었습니다.

 

읽어주셔서 고맙습니다 ^^

댓글