首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

为何在图片控件框上不能显示文字?该怎么解决

2012-04-11 
为何在图片控件框上不能显示文字?//图片控件的设置是默认的void XDlg::OnBnClickedOk(){const CWnd *pWnd

为何在图片控件框上不能显示文字?

//图片控件的设置是默认的
void XDlg::OnBnClickedOk()
{
const CWnd *pWnd = GetDlgItem(IDC_PLAY_AREA); //IDC_PLAY_AREA为图片控件ID
const HWND hWnd = pWnd->m_hWnd;
PAINTSTRUCT ps;
const HDC hdc = ::BeginPaint(hWnd, &ps);
TCHAR strText[64]=_T("XXXYYYZZZ"); 
SetTextColor(hdc, 0xFF00FF);
TextOut(hdc,10, 10, strText, 12);
  ::EndPaint(hWnd, &ps);
UpdateData(false);
}

[解决办法]
PAINTSTRUCT ps的更新区可能=0。查查。(应该先Invalidate)
[解决办法]

C/C++ code
const CWnd *pWnd = GetDlgItem(IDC_PLAY_AREA); //IDC_PLAY_AREA为图片控件IDconst HWND hWnd = pWnd->m_hWnd;PAINTSTRUCT ps; const HDC hdc = ::BeginPaint(hWnd, &ps);TCHAR strText[64]=_T("XXXYYYZZZ");  SetTextColor(hdc, 0xFF00FF);TextOut(hdc,10, 10, strText, 12);  ::EndPaint(hWnd, &ps);
[解决办法]
c初试为false
C/C++ code
void CXXXDlg::OnPaint() {............................    if(c==true)    {        const CWnd *pWnd = GetDlgItem(IDC_PLAY_AREA); //IDC_PLAY_AREA为图片控件ID        const HWND hWnd = pWnd->m_hWnd;        PAINTSTRUCT ps;         const HDC hdc = ::BeginPaint(hWnd, &ps);        TCHAR strText[64]=_T("XXXYYYZZZ");          SetTextColor(hdc, 0xFF00FF);        TextOut(hdc,10, 10, strText, 12);        ::EndPaint(hWnd, &ps);    }}void CXXXDlg::OnButton1() {    // TODO: Add your control notification handler code here    c=true;    Invalidate(true);//    UpdateData(false);} 

热点排行