반응형
* C# API 를 이용해 해당 윈도우 폼(Window Form) 을 찾아서 최상위 윈도우로 포커스(Focus) 맞추기 예제...
전체 소스 코드
Form1.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace CSharp_FirstFocus
{
public partial class Form1 : Form
{
//API 선언...
[DllImport("user32.dll")]
private static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
[DllImport("user32.dll")]
private static extern bool SetForegroundWindow(IntPtr hWnd);
[DllImport("user32.dll")]
private static extern bool ShowWindowAsync(IntPtr hWnd, int nCmdShow);
//윈도우 상태...
private const int SHOWNORMAL = 1;
private const int SHOWMINIMIZED = 2;
private const int SHOWMAXIMIZED = 3;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
IntPtr ipHandle = FindWindow(null, textBox1.Text);
if (!ipHandle.Equals(IntPtr.Zero))
{
// 윈도우가 최소화 되어 있다면 활성화...
ShowWindowAsync(ipHandle, SHOWNORMAL);
// 윈도우에 포커스를 줘서 최상위로...
SetForegroundWindow(ipHandle);
}
}
}
}
*예제 결과
https://kdsoft-zeros.tistory.com/107
반응형
'C# Programming' 카테고리의 다른 글
[C#] Network MacAddress (네트워크 맥 주소 구하기) (0) | 2020.02.13 |
---|---|
[C#] ref 키워드 와 out 키워드의 차이 (0) | 2020.02.12 |
[C#] 윈도우 폼 (Window Form) 포커스 (Focus) 가 가지 않게 하기 (0) | 2020.02.07 |
[C#] Excel File Print (엑셀 파일 프린트 하기) (0) | 2020.02.04 |
[C#] 아스키 코드 표 (Ascii Code) (0) | 2020.02.03 |