펌) 델파이 윈도우 화면 맨위에 위치시키기

윈도우를 맨 위로 위치시키는 방법에 대한 것입니다.
이게 윈도우들의 z-order에 따라 되다 안되다 하는 경우가 생깁니다.
다음과 같은 방법으로 가능합니다.

출처 : http://www.tipssoft.com/bulletin/board.php?bo_table=QnA&wr_id=400

if(::GetForegroundWindow() != this->m_hWnd){
HWND h_active_wnd = ::GetForegroundWindow();
if(h_active_wnd != NULL){
DWORD thread_id = GetWindowThreadProcessId(h_active_wnd, NULL);
DWORD current_thread_id = GetCurrentThreadId();
if(current_thread_id != thread_id){
if(AttachThreadInput(current_thread_id, thread_id, TRUE)){
BringWindowToTop();
AttachThreadInput(current_thread_id, thread_id, FALSE);
}
}
}
}

자세한 설명은 위의 출처 글을 참고하시기 바랍니다.

댓글

가장 많이 본 글