반응형
안녕하세요
이번 포스팅에서는 C# WinForm에서 Control들에 마우스를 올리고 내릴 경우 배경 색상을 변경하는 방법에 대해서 알아보겠습니다
목차
첨부파일
디자인
예제 코드
결과 화면
첨부파일
제가 작성한 프로그램의 전체 소스 압축파일입니다
포스팅만의 내용으로 이해가 안 되신다면 파일을 다운로드받아 참고 바랍니다
디자인
디자인은 간단하게 했습니다
도구 상자에서 Panel을 Form에 추가해줍니다
기본 색상으로 하면 Form의 색상과 구분이 되지 않으므로 BackColor는 검은색으로 변경하였습니다
예제 코드
먼저 패널에 대한 이벤트를 추가해야 합니다
패널을 선택하여 이벤트 탭으로 이동합니다
"MouseHover", "MouserLeave"를 더블클릭하면 cs파일에 이벤트가 추가됩니다
MouseHover는 마우스가 패널에 일정시간동안 올라오면 이벤트를 실행합니다
MouseLeave는 마우스가 판넬 밖으로 떠났을 때 이벤트를 실행합니다
using System;
using System.Drawing;
using System.Windows.Forms;
namespace BGChangeMouse
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
// 판넬로 마우스가 들어왔을 때
private void panel1_MouseHover(object sender, EventArgs e)
{
this.panel1.BackColor = Color.White;
}
// 판넬로 마우스가 떠났을 때
private void panel1_MouseLeave(object sender, EventArgs e)
{
this.panel1.BackColor = Color.Black;
}
}
}
전체 코드입니다
MouseHover 이벤트에는 배경 색상을 흰색으로,
MouseLeave 이벤트에는 배경색상을 검은색으로 변경합니다
이제 프로그램을 실행해보겠습니다
결과 화면
패널에 마우스를 올리면 위에처럼 배경 색상이 흰색으로 바뀝니다
여기까지 C# WinForm의 마우스 위치에 따라 Control의 배경 색상을 변경하는 방법에 대해서 알아봤습니다
반응형
그리드형
'프로그래밍 > C#' 카테고리의 다른 글
[Visual Studio] 프로젝트 템플릿 추가하기 (0) | 2021.09.16 |
---|---|
[C#] 선택한 파일로 배경이미지 변경하기 (0) | 2021.05.28 |
[C#] 프로그램 내에서 임의로 배경색 변경하기 (0) | 2021.05.28 |
[C# WinForm] Control 배경 변경하기 (0) | 2021.05.26 |
[C# WinForm] TabIndex란? / 손 쉽게 TabIndex 설정하기 (0) | 2021.05.17 |