对话框怎么用TextOut 来输出文字
file:///C:\Documents and Settings\Administrator\Application Data\Tencent\Users\416444845\QQ\WinTemp\RichOle\]@1MHUG4`)8KS1_L[}HV~AA.png图1 使用了textout 输出字符串就像图2那样显示要怎么做呢响应WNPAINT消息,用BEGINPAINT获取HDC,然后TEXTOUT 本帖最后由 骗子死全家 于 2014-10-19 17:15 编辑
仰望天上的光 发表于 2014-10-19 16:24
响应WNPAINT消息,用BEGINPAINT获取HDC,然后TEXTOUT
void CMyDlg::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
HDC hDC;
PAINTSTRUCT ps;
dc.DrawIcon(x, y, m_hIcon);
CFont font;
font.CreatePointFont(300,"华文行楷");
CFont* pOldFont;
pOldFont=dc.SelectObject(&font);
hDC=::BeginPaint((HWND)GetParent(),&ps);
::TextOut(hDC,100,100,"asd",3);
::EndPaint((HWND)GetParent(),&ps);
dc.SelectObject(pOldFont);
}
else
{
CDialog::OnPaint();
}
}
还是没反应 好无奈啊{:1_1:}:sad:sad:sad:sad 骗子死全家 发表于 2014-10-19 16:58
void CMyDlg::OnPaint()
{
if (IsIconic())
if (IsIconic())的意思是如果该对话框是最小化的。。。就。。。
你应该把 if (IsIconic())
改为
if (!IsIconic()) 仰望天上的光 发表于 2014-10-19 21:19
if (IsIconic())的意思是如果该对话框是最小化的。。。就。。。
你应该把 if (IsIconic())
改为
谢谢
页:
[1]