반응형
Windows 양식이 최소화되는시기를 감지하는 방법은 무엇입니까?
WindowState로 현재 상태를 얻을 수 있다는 것을 알고 있지만 사용자가 양식을 최소화하려고 할 때 발생하는 이벤트가 있는지 알고 싶습니다.
Resize 이벤트를 사용하고 이벤트에서 Forms.WindowState 속성을 확인할 수 있습니다.
private void Form1_Resize ( object sender , EventArgs e )
{
if ( WindowState == FormWindowState.Minimized )
{
// Do some stuff
}
}
에 얻으려면 전에 양식 당신이의 WndProc 절차에 후크해야합니다 최소화하고있다 :
private const int WM_SYSCOMMAND = 0x0112;
private const int SC_MINIMIZE = 0xF020;
[SecurityPermission(SecurityAction.LinkDemand, Flags = SecurityPermissionFlag.UnmanagedCode)]
protected override void WndProc(ref Message m)
{
switch(m.Msg)
{
case WM_SYSCOMMAND:
int command = m.WParam.ToInt32() & 0xfff0;
if (command == SC_MINIMIZE)
{
// Do your action
}
// If you don't want to do the default action then break
break;
}
base.WndProc(ref m);
}
양식이 최소화 된 후 반응하려면 Resize
다른 답변이 지적한 것처럼 이벤트에 연결 하십시오 (완전성을 위해 여기에 포함됨).
private void Form1_Resize (object sender, EventArgs e)
{
if (WindowState == FormWindowState.Minimized)
{
// Do your action
}
}
나는 알지 못한다 특정의 이벤트,하지만 Resize
폼이 최소화 될 때 이벤트가 발생, 당신은 확인할 수 있습니다 FormWindowState.Minimized
해당 이벤트에
이벤트를 최소화하는 WPF 창을 검색하는 사용자 :
조금 다릅니다. 콜백의 경우 WindowState를 사용합니다.
private void Form1_Resize(object sender, EventArgs e)
{
if (WindowState == FormWindowState.Minimized)
{
// Do some stuff
}
}
사용할 이벤트는 StateChanged입니다 (대신 Resize).
public Main()
{
InitializeComponent();
this.StateChanged += Form1_Resize;
}
참고 URL : https://stackoverflow.com/questions/1052913/how-to-detect-when-a-windows-form-is-being-minimized
반응형
'your programing' 카테고리의 다른 글
Xcode 6.1 / Swift를 사용하여 프로그래밍 방식으로 이미지를 UIImageView로 설정 (0) | 2020.10.13 |
---|---|
chartjs에서 시작 값을 "0"으로 설정하는 방법은 무엇입니까? (0) | 2020.10.13 |
사전의 키 순서 (0) | 2020.10.13 |
SQL Server 2008의 데이터베이스에서 데이터로 단일 테이블 백업 (0) | 2020.10.13 |
불필요한 스터 빙 예외를 해결하는 방법 (0) | 2020.10.13 |