본문 바로가기

Windows/MFC

CView 에서 AnimationGIF 출력하기 (AniGif)

[code]
// 클래스 지정
CPictureEx m_picLogo;
[/code]

[code]
// 내용 뿌리기
void CTestGifView::OnInitialUpdate()
{
    CView::OnInitialUpdate();
    
    // TODO: Add your specialized code here and/or call the base class

    CRect rcLogo(10, 10, 90, 85);
    m_picLogo.Create(_T("Logo"), WS_VISIBLE | WS_CHILD, rcLogo, this);
    if(m_picLogo.Load(MAKEINTRESOURCE(IDR_GIF1),_T("GIF")/*_T("E:\\Logo.gif")*/))
    {
        m_picLogo.SetBkColor(RGB(0, 0, 0));
        m_picLogo.Draw();
    }
}
[/code]


[code]
// Example

void CTestGifView::OnInitialUpdate()
{
    CView::OnInitialUpdate();
    
    // TODO: Add your specialized code here and/or call the base class
    m_test = true;
    m_state = false;
    
    CRect rcLogo(100, 10, 90, 85);
    m_picLogo.Create(_T("Logo"), WS_VISIBLE | WS_CHILD, rcLogo, this);    
    m_picLogo.Load(MAKEINTRESOURCE(IDR_GIF1),_T("GIF"));
    m_picLogo.Draw();
    m_picLogo.ShowWindow(SW_HIDE);
}

void CTestGifView::OnLButtonDown(UINT nFlags, CPoint point)
{
    // TODO: Add your message handler code here and/or call default
    m_test = false;

    if(!m_test && !m_state)
    {
        m_state = true;
        m_picLogo.ShowWindow(SW_SHOW);
    }
    else
    {
        m_test = true;
        m_state = false;
        m_picLogo.ShowWindow(SW_HIDE);
    }

    CWnd::InvalidateRect(CRect(0,0,100,100),true);

//    UpdateData(false);
    //UpdateData(true);
    CView::OnLButtonDown(nFlags, point);
}
[/code]