15,980
社区成员
发帖
与我相关
我的任务
分享
void CImageDlg::OnFanse()
{
ClearMemory();
ZengQiang.FanSeBianHuan();
ZengQiang.ZhiFangTu(ZF,0);
CShowImage *Show=new CShowImage;
Show->Create(IDD_DIALOG_SHOW,NULL);
Show->GetHuiDuInfo(ZF);
Show->GetWindowTitle("反色变换");
Show->GetAddr(ZengQiang.GetData(),ZengQiang.GetWidth(),ZengQiang.GetHeight(),ZengQiang.GetInfo());
Show->ShowWindow(SW_SHOW);
// Show=NULL;// TODO: Add your command handler code here
}
CPaintDC dc(this);
SetWindowText(TheTitle);
CWnd *pWnd = GetDlgItem(IDC_BMPSHOW2);
pWnd->UpdateWindow();
// device context for painting
CRect Rect;
HDC HCtrlDC;
HCtrlDC=::GetDC(::GetDlgItem((this->m_hWnd),IDC_BMPSHOW2));
GetWindowRect(&Rect);
ScreenToClient(&Rect);
SetStretchBltMode(HCtrlDC, COLORONCOLOR);
StretchDIBits(HCtrlDC, //控件DC
0, //控件X方向偏移
0, //控件Y方向偏移
Rect.right - Rect.left, //显示窗口宽度
Rect.bottom - Rect.top, //显示窗口高度
0,
0,
BMPWidth , //图像宽度
BMPHeigh , //图像高度
BMPAddr, //图像数据内存首指针
BMPInfo, //BITMAPINFO Structure
DIB_RGB_COLORS,
SRCCOPY
);
::ReleaseDC(::GetDlgItem((this->m_hWnd),IDC_BMPSHOW2),HCtrlDC);
void CShowImage::OnPaint()
{
// CPaintDC dc(this); // device context for painting
//
CPaintDC dc(this);
SetWindowText(TheTitle);
CWnd *pWnd = GetDlgItem(IDC_BMPSHOW2);
pWnd->UpdateWindow();
// device context for painting
CRect Rect;
HDC HCtrlDC;
HCtrlDC=::GetDC(::GetDlgItem((this->m_hWnd),IDC_BMPSHOW2));
GetWindowRect(&Rect);
ScreenToClient(&Rect);
SetStretchBltMode(HCtrlDC, COLORONCOLOR);
StretchDIBits(HCtrlDC, //控件DC
0, //控件X方向偏移
0, //控件Y方向偏移
Rect.right - Rect.left, //显示窗口宽度
Rect.bottom - Rect.top, //显示窗口高度
0,
0,
BMPWidth , //图像宽度
BMPHeigh , //图像高度
BMPAddr, //图像数据内存首指针
BMPInfo, //BITMAPINFO Structure
DIB_RGB_COLORS,
SRCCOPY
);
::ReleaseDC(::GetDlgItem((this->m_hWnd),IDC_BMPSHOW2),HCtrlDC);
}