1. 程式人生 > >【MFC】簡單實現視窗始終置底

【MFC】簡單實現視窗始終置底

環境:win10,vs2017

注意這裡是始終置底,不是始終置頂

 

關於視窗持續置底,嘗試了不少網上方法,但都不怎麼適合自己的程式。於是自己想了個比較笨的方法,總算是基本實現自己想要的效果了。

下面這句程式碼能將視窗進行一次置底,但視窗一啟用又顯示了。

SetWindowPos(&wndBottom, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE);

於是嘗試用100ms延時的定時器持續執行,發現效果還算理想,能實現簡單的持續置底。

實現如下:

//建立定時器
SetTimer(TIMER_AUTOTURN, 100, 0);

 

void CDesktopEvaDlg::OnTimer(UINT_PTR nIDEvent)
{
	// TODO: 在此新增訊息處理程式程式碼和/或呼叫預設值
	switch (nIDEvent) {
		case TIMER_AUTOTURN:
		{
			//視窗置底
			SetWindowPos(&wndBottom, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE);
			break;
		}
	}
	CDialogEx::OnTimer(nIDEvent);
}

 

 

更新了方法,請看另一篇部落格https://blog.csdn.net/h84121599/article/details/82431043