如何让控件显示在程序的最上面
我写了一个MFC小游戏,我关闭了自动跟新背景,在OnPaint方法中自己画,但是一改变大小有的时候部分控件回被遮挡
OnPaint()
{
GDI_draw();//全部跟新背景
if (IsIconic())
{
CPaintDC dc(this); // 用于绘制的设备上下文
SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
// 使图标在工作矩形中居中
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;
// 绘制图标
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
CComboBox *pCCom2 = (CComboBox *)GetDlgItem(IDC_COMBO2);
CComboBox *pCCom1 = (CComboBox *)GetDlgItem(IDC_COMBO1);
CEdit *pCedit = (CEdit *)GetDlgItem(IDC_EDIT4);
CBitmapButton *pCbut1 = (CBitmapButton *)GetDlgItem(IDC_BUTTON1);
CBitmapButton *pCbut2 = (CBitmapButton *)GetDlgItem(IDC_BUTTON2);
CBitmapButton *pCbut3 = (CBitmapButton *)GetDlgItem(IDC_BUTTON3);
CBitmapButton *pCbut4 = (CBitmapButton *)GetDlgItem(IDC_BUTTON4);
CListCtrl *pClist = (CListCtrl *)GetDlgItem(IDC_LIST1);
pCedit->ShowWindow(SW_NORMAL);
pCbut1->ShowWindow(SW_NORMAL);
pCbut2->ShowWindow(SW_NORMAL);
pCbut3->ShowWindow(SW_NORMAL);
pCbut4->ShowWindow(SW_NORMAL);
pClist->ShowWindow(SW_NORMAL);
pCCom2->ShowWindow(SW_NORMAL);
pCCom1->ShowWindow(SW_NORMAL);
pCbut5->ShowWindow(SW_NORMAL);
pCedit->UpdateWindow();
pCbut1->UpdateWindow();
pCbut2->UpdateWindow();
pCbut3->UpdateWindow();
pCbut4->UpdateWindow();
pClist->UpdateWindow();
pCCom2->UpdateWindow();
pCCom1->UpdateWindow();
pCbut5->UpdateWindow();
}
可是有的控件还是会被遮挡,被遮挡的控件是CComboBox,CButton,CBitmapButton。但是
CEdit和CListCtrl就算不ShowWindow和UpdateWindow一点影响也没有,怎么回事啊