3.1.3 Form1 구현
이제 작성한 ColorSelectorControl을 사용하는 Form1 을 구현합시다. 먼저 자식 컨트롤을 배치하세요.
[그림 3.6] Form1 자식 컨트롤 배치
위쪽에 ColorSelector 컨트롤을 배치하고 아래쪽에 변경할 때 사용할 컨트롤들을 배치하세요.
No |
Name |
컨트롤 형식 |
설명 |
1 |
colorsel |
ColorSelectorControl |
색상 변경 사용자 정의 컨트롤 |
2 |
tbox_red |
TextBox |
Red 색상 정보 표시 및 입력 |
3 |
btn_red |
Button |
Red 색상 변경 |
4 |
tbox_green |
TextBox |
Green 색상 정보 표시 및 입력 |
5 |
btn_green |
Button |
Green 색상 변경 |
6 |
tbox_blue |
TextBox |
Blue 색상 정보 표시 및 입력 |
7 |
btn_blue |
Button |
Blue 색상 변경 |
8 |
btn_all |
Button |
전체 색상 변경 |
[표 3.2] Form1 의 자식 컨트롤
ColorSelectorControl 인 colorsel의 ColorChanged 이벤트 핸들러를 등록하세요.
private void colorsel_ColorChanged(object sender, ColorChangeEventArgs e)
{
컨트롤의 색상 속성을 이용하여 TextBox의 Text 속성을 설정합니다.
tbox_red.Text = e.Red.ToString();
tbox_green.Text = e.Green.ToString();
tbox_blue.Text = e.Blue.ToString();
}
각 버튼의 클릭 이벤트 핸들러를 등록하여 colorsel 개체의 색상 정보를 변경하는 메서드인 Change___ 메서드를 호출합니다.
private void btn_red_Click(object sender, EventArgs e)
{
int r = colorsel.Red;
int.TryParse(tbox_red.Text, out r);
colorsel.ChangeRed(r);
}
특별하게 다르게 처리하지도 않으며 바로 이어서 Form1.cs 소스 내용이 있어서 이하 생략할게요.
... 중략 ...
▷Form1.cs
using System; using System.Windows.Forms;
namespace Ex_사용자_정의_컨트롤 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } void colorsel_ColorChanged(object sender, ColorChangeEventArgs e) { tbox_red.Text = e.Red.ToString(); tbox_green.Text = e.Green.ToString(); tbox_blue.Text = e.Blue.ToString(); } private void btn_red_Click(object sender, EventArgs e) { int r = colorsel.Red; int.TryParse(tbox_red.Text, out r); colorsel.ChangeRed(r); } private void btn_green_Click(object sender, EventArgs e) { int g = colorsel.Green; int.TryParse(tbox_green.Text, out g);
colorsel.ChangeGreen(g); } private void btn_blue_Click(object sender, EventArgs e) { int b = colorsel.Blue; int.TryParse(tbox_blue.Text, out b); colorsel.ChangeBlue(b); } private void btn_all_Click(object sender, EventArgs e) { int r = colorsel.Red; int g = colorsel.Green; int b = colorsel.Blue;
int.TryParse(tbox_red.Text, out r); int.TryParse(tbox_green.Text, out g); int.TryParse(tbox_blue.Text, out b); colorsel.ChangeColor(r, g, b); } } } |
'프로그래밍 기술 > Windows Form 응용 프로그램' 카테고리의 다른 글
4. 4 폼 구현 [Windows Forms 응용 프로그램] (0) | 2016.04.06 |
---|---|
4.3 엔진 개발 [Windows Forms 응용 프로그램] (0) | 2016.04.06 |
4. 폼과 폼 사이에 상호 작용 [Windows Forms 응용 프로그램] (3) | 2016.04.06 |
3. 2 실습: 다른 프로젝트에서 만든 컨트롤 사용하기 [Windows Forms 응용 프로그램] (0) | 2016.04.06 |
3.1.2 ColorSelectControl 정의 [Windows Forms 응용 프로그램] (0) | 2016.04.06 |
3.1.1 ColorChangeEventArgs 정의 [Windows Forms 응용 프로그램] (0) | 2016.04.06 |
3. 사용자 정의 컨트롤 [Windows Forms 응용 프로그램] (0) | 2016.04.06 |
TreeView 실습 [Windows Forms 응용 프로그램] (2) | 2016.04.05 |
ListView 실습 [Windows Forms 응용 프로그램] (0) | 2016.04.05 |
ComboBox, ListBox, CheckListBox 실습 [Windows Forms 실습] (0) | 2016.04.05 |