把edit的dc设了透明后,输入字符会出现重影现象,这是怎么回事?
是用atl作的,代码如下:
LRESULT CAddTextDialog::OnCtlColorEdit(UINT , WPARAM , LPARAM , BOOL& )
{
SetBkMode((HDC)wParam, TRANSPARENT);
return 0;
}是不是有些默认的操作没做啊?
是用atl作的,代码如下:
LRESULT CAddTextDialog::OnCtlColorEdit(UINT , WPARAM , LPARAM , BOOL& )
{
SetBkMode((HDC)wParam, TRANSPARENT);
return 0;
}是不是有些默认的操作没做啊?
解决方案 »
- DLL加载问题
- 请问怎么学习MFC
- listctrl问题
- 帮我找个汽车修理厂的程序
- lpBuffers中的buf数据是什么格式
- 关于CWnd::BringWindowToTop()
- SDI的程序,很简单,改变窗口大小的时候没有看到图形,是不是太快了?
- 再问一下。
- 求解:为什么在win32 SDK的框架下GetClientRect()总是返回0
- 请问怎么用:一是platformsdk,二是定义版本号。急!!!
- fatal error C1010: 这句出错信息是什么意思?
- 如何更改windows的文件存取模块为自己编写的模块,用陷阱技术吗? 编写这样的模块复杂吗? 要做透明加密如何做?用efs吗?
{
// Call the base class implementation first! Otherwise, it may
// undo what we are trying to accomplish here.
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); // Are we painting the IDC_MYSTATIC control? We can use
// CWnd::GetDlgCtrlID() to perform the most efficient test.
if (pWnd->GetDlgCtrlID() == IDC_MYSTATIC)
{
// Set the background mode for text to transparent
// so background will show thru.
pDC->SetBkMode(TRANSPARENT); // Return handle to our CBrush object.
hbr = (HBRUSH)GetStockObject(HOLLOW_BRUSH);;
} return hbr;
}
pDC->SetBkMode(TRANSPARENT);
hbr = (HBRUSH)GetStockObject(HOLLOW_BRUSH);;