MFC 控件选中问题 求解决
本帖最后由 rivaler 于 2013-04-11 10:52:03 编辑 一个基本的 对话框
首先添加一个图片控件(大小是整个对话框的范围 就是该图片文件做背景),控件是加载了位图文件
然后再在上面随便添加一个按钮
(此时按钮控件已经在最上层了,覆盖了部分的背景)
鼠标点击按钮 但是无法选中 点击选中的一直是下面的背景的图片控件
就是说用工具箱往对话框中添加控件时候,当控件重叠时候 点击选中的是下面的控件。
控件重叠时候怎么选中上面的控件
求教解决方法 MFC 控件 选中
[解决办法]
如果你贴图片是为了对话框的背景的话,不需要用图片控件,可以直接把对话框的背景给贴上图片,程序如下:
先添加图片到资源里面,名字 IDB_PIC
void CFiveChessClientDlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // device context for painting
SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);
// Center icon in client rectangle
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;
// Draw the icon
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
CDC* pDC = GetDC();
CBitmap bmp1,bmp2,bk;
CDC memdc;
memdc.CreateCompatibleDC(pDC);
bk.LoadBitmap(IDB_PIC);
memdc.SelectObject(&bk);
pDC->BitBlt(0,0,663,664,&memdc,0,0,SRCCOPY);
bk.DeleteObject();
ReleaseDC(&memdc);
}
[解决办法]