关于MFC开始运行的程序的绘图先后顺序
阿萨
在使用MFC进行插入图片的时候,我在OnInitDialog()中进行图片的加载和放大缩小。
使用的static控件和进行加载我的图片,但是我发现每次使用的时候,仅仅是static控件变成图片的大小了,而在控件中却是没有图片显示。换了几次显示的方法都空有框架。也怀疑是图片的格式问题,换了几次图片。
后面我就想会不会是后面的程序把它刷没了,我就在OnPaint中进行绘图,一运行成功显示了,终于找到原因,后面顺便附上渣代码。本人渣渣新手,写日志以提醒自己,如有错误,欢迎指教
void CMy61TestDlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // 用于绘制的设备上下文
SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);
// 使图标在工作区矩形中居中
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;
// 绘制图标
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CDialog::OnPaint();
}
int cx,cy;
CRect rect;
CImage image;
image.Load(_T(&#