我在CStatic的继承类图片控件中输出了一些文字,我使用对话框的OnPaint()输出这些文字,问题是在程序失去焦点再回来时,输出的文字不见了,对话框碰到屏幕边界时OnPaint()输出文字正常。我不使用继承类时使用本方法正常。
请高手指点。
[email protected]
请高手指点。
[email protected]
解决方案 »
- 类定义问题
- tcp连接为什么会失败?
- 如果我调用WSAStartup,在程序退出的时候不调用WSACleanup会不会有什么影响?
- 急!!基础问题:我建了一个test.ocx的project,我该如何从别的子类里获取CTestCtrl对象?
- 一个线程睡眠了(Sleep)了或者SuspendThread挂起了,会不会增加系统开销?
- 控制台程序中能不能利用多线程,看代码
- 怎样得到一个视的指针
- 怎样将背景位图与其上绘制的曲线一起存成一幅新的位图?
- 派生Recordset
- 如何用程序方式修改菜单字体大小
- wince下怎么判断properypage是否大于propertysheet所能显示的区域??
- 如何设定connect的连接时间(能够解决问题的百分相送)
在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();
}