我不是毛磊怎么了:如何使STATIC控件的背景透明以及动态改变控件文本内容时闪烁的问题
来源:百度文库 编辑:中财网 时间:2024/04/29 09:03:21
一、用VC编写基于对话框的应用程序,用BMP位图作为对话框背景,对话框上的STATIC静态文本框,可以用以下消息函数使文本框的文字背景透明:
HBRUSH CXXXDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here
if( nCtlColor == CTLCOLOR_STATIC)
{
pDC->SetBkMode(TRANSPARENT); //设置背景透明
return HBRUSH(GetStockObject(HOLLOW_BRUSH));
}
HBRUSH CXXXDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here
if( nCtlColor == CTLCOLOR_STATIC)
{
pDC->SetBkMode(TRANSPARENT); //设置背景透明
return HBRUSH(GetStockObject(HOLLOW_BRUSH));
}
// TODO: Return a different brush if the default is not desired
return hbr;
}
二、动态改变控件文本内容时闪烁,可以用以下函数解决这个问题:
void CXXXDlg::OnBtnStatic()
{
// TODO: Add your control notification handler code here
// IDC_STATIC_ST为静态文本控件ID号
CStatic* pSt = (CStatic*)GetDlgItem( IDC_STATIC_ST);
pSt->SetWindowText("北京2008");
RECT rect;
pSt->GetWindowRect(&rect);
ScreenToClient(&rect);
InvalidateRect( &rect,FALSE );
//Invalidate(FALSE); // 整个客户区无效
}
如何实现image控件的背景透明(delphi)
如何使blog模版的背景透明?
如何使BLOG的背景变透明?
如何使图片背景透明
vc++.net问题: 如何让STATIC控件接受WM_LButtonDown, WM_LButtonUp, WM_MouseMove的消息?
如何使vb中按钮的背景颜色为透明
如何使百度空间的模块背景完全透明?
如何让flash的背景变成透明?
excel 的图表如何设置透明背景?
如何制作透明背景的Flash
如何在插入透明背景的flash
如何制作背景透明的png图标
如何使桌面图标背景变透明??
VC如何动态隐藏控件
使CB中的DBGrid的背景透明
BLOG的透明背景
如何动态添加控件到SSTab的不同页中,??
如何制作打包好的VB6.0动态控件?
请问Vb的tabstrip控件如何动态添加tab
datawindow.net 如何动态改变图片控件的src属性
如何给动态添加的控件添加事件
请问VB中怎样让Option控件背景透明?
如何设置背景全透明
急~~如何使蓝拷贝的电影的背景成透明的背景,敬请各位大虾指教