mfc_dlg_image - 8BitsCoding/RobotMentor GitHub Wiki


์„ ํƒ์„ ํ†ตํ•ด ์ด๋ฏธ์ง€ ์„ ํƒ ๋‹ค์ด์–ผ๋กœ๊ทธ๋กœ ์ด๋ฏธ์ง€๋ฅผ ์„ ํƒํ•˜๋ฉด ์„ ํƒ๋œ ์ด๋ฏธ์ง€๊ฐ€ ๋‹ค์ด์–ผ๋กœ๊ทธ์— ์ „์‹œ๋จ.

void CMFCApplication6Dlg::OnPaint()
{
	CPaintDC dc(this); // ๊ทธ๋ฆฌ๊ธฐ๋ฅผ ์œ„ํ•œ ๋””๋ฐ”์ด์Šค ์ปจํ…์ŠคํŠธ์ž…๋‹ˆ๋‹ค.

	if (IsIconic())
	{
        // ...
	}
	else
	{
		if (image.IsNull() != 0) {
			dc.SetStretchBltMode(COLORONCOLOR);
			image.Draw(dc, m_rect);
		}

		// CDialogEx::OnPaint();
	}
}
void CMFCApplication6Dlg::OnBnClickedSlectBtn()
{
	wchar_t name_filter[] = L"๋ชจ๋“  ํŒŒ์ผ(*.*)|*.*|Jpeg ํŒŒ์ผ(*.jpg)|*.jpg|PNG ํŒŒ์ผ(*.png)|*.png||";
	CFileDialog ins_dlg(TRUE, L"jpg", L"*.jpg", OFN_HIDEREADONLY | OFN_NOCHANGEDIR, name_filter);
	ins_dlg.m_ofn.nFilterIndex = 2;

	if (IDOK == ins_dlg.DoModal()) {
		GetClientRect(m_rect);
		if (!image.IsNull()) {
			image.Destroy();
		}
		image.Load(ins_dlg.GetPathName());
		Invalidate(FALSE);
	}
}
void CMFCApplication6Dlg::OnSize(UINT nType, int cx, int cy)
{
	CDialogEx::OnSize(nType, cx, cy);

	//GetClientRect(m_rect);
	m_rect.right = cx;
	m_rect.bottom = cy;

	Invalidate(FALSE);
}