mfc_true_color - 8BitsCoding/RobotMentor GitHub Wiki
// Dlg.h
CImage m_color_image;
unsigned int * mp_color_pattern;
BOOL CMFCApplication1Dlg::OnInitDialog()
{
CDialogEx::OnInitDialog();
// μ΄ λν μμμ μμ΄μ½μ μ€μ ν©λλ€. μμ© νλ‘κ·Έλ¨μ μ£Ό μ°½μ΄ λν μμκ° μλ κ²½μ°μλ
// νλ μμν¬κ° μ΄ μμ
μ μλμΌλ‘ μνν©λλ€.
SetIcon(m_hIcon, TRUE); // ν° μμ΄μ½μ μ€μ ν©λλ€.
SetIcon(m_hIcon, FALSE); // μμ μμ΄μ½μ μ€μ ν©λλ€.
// TODO: μ¬κΈ°μ μΆκ° μ΄κΈ°ν μμ
μ μΆκ°ν©λλ€.
m_color_image.Create(4096, 4096, 32);
BITMAP bmp_info;
GetObject((HBITMAP)m_color_image, sizeof(BITMAP), &bmp_info);
mp_color_pattern = (unsigned int *)m_color_image.GetBits();
mp_color_pattern += bmp_info.bmWidthBytes/sizeof(unsigned int) - 1;
unsigned int * p = mp_color_pattern;
for (int i = 0; i < 4096 * 4096; i++) {
*p-- = i;
}
ShowWindow(SW_SHOWMAXIMIZED);
return TRUE; // ν¬μ»€μ€λ₯Ό 컨νΈλ‘€μ μ€μ νμ§ μμΌλ©΄ TRUEλ₯Ό λ°νν©λλ€.
}
void CMFCApplication1Dlg::OnPaint()
{
CPaintDC dc(this); // 그리기λ₯Ό μν λλ°μ΄μ€ 컨ν
μ€νΈμ
λλ€.
if (IsIconic())
{
// ...
}
else
{
m_color_image.Draw(dc, 0, 0);
//CDialogEx::OnPaint();
}
}