Codejock Forums Homepage
Forum Home Forum Home > Codejock Products > Visual C++ MFC > Toolkit Pro
  New Posts New Posts RSS Feed - Problem with ImageManager in v17.3.0
  FAQ FAQ  Forum Search   Events   Register Register  Login Login

Problem with ImageManager in v17.3.0

 Post Reply Post Reply
Author
Message
mzolotar View Drop Down
Newbie
Newbie


Joined: 20 November 2008
Status: Offline
Points: 3
Post Options Post Options   Thanks (0) Thanks(0)   Quote mzolotar Quote  Post ReplyReply Direct Link To This Post Topic: Problem with ImageManager in v17.3.0
    Posted: 15 April 2019 at 1:38am

I have a CIconCheckBox class which is derived from CXTPButton class.  This function for setting ImageManager:

void CIconCheckBox::SetImageManager(CXTPImageManager* pImageManager)

{

    if (pImageManager && m_pMarkupContext)

    {

        m_pMarkupContext->SetImageManager(pImageManager);

        CMDTARGET_ADDREF(pImageManager);

    }

    else

        ASSERT(0);

}

This checkbox is then initialized in a dialog as follow

CMyDialog::OnInitDialog()

{

    BOOL result = CXTPPropertyPage::OnInitDialog();

    // m_imageManager & m_checkbox are members of CMyDialog

    m_imageManager.SetImageList(IDB_IMAGELIST, 16);

    m_checkbox.SubclassDlgItem(IDC_CHECKBOXID, this);

    m_checkbox.SetImageManager(&m_imageManager);

    m_checkbox.SetImage(0);

}

This code works well in v16.2.4 & Visual Studio 2012. However, after being upgraded to v17.3.0 & Visual Studio 2015, exception always occurs in CXTPImageManagerIconHandle::GetBitmap() because of hBitmap=null and m_pRInfo=null.

HBITMAP CXTPImageManagerIconHandle::GetBitmap() const

{

    ASSERT(IsAlpha());

    if (m_hBitmap)

        return m_hBitmap;

    if (m_pRInfo && m_pRInfo->pResource && m_pRInfo->pResource->m_hbmpImage)

        return m_pRInfo->pResource->m_hbmpImage;

    ASSERT(FALSE);

    return NULL;

}

 

// Call Stack for reference

ToolkitPro1730vc140UD.dll!CXTPImageManagerIconHandle::GetBitmap() Line 1320           C++

ToolkitPro1730vc140UD.dll!CXTPMarkupGdiPlusDeviceContext::IconToGdiplusBitmap(CXTPImageManagerIcon * pIcon) Line 781   C++

ToolkitPro1730vc140UD.dll!CXTPMarkupGdiPlusDeviceContext::DrawImage(CXTPImageManagerIcon * pIcon, CRect rc) Line 799     C++

ToolkitPro1730vc140UD.dll!CXTPMarkupGdiPlusDeviceContext::DrawImage(CXTPMarkupDeviceDependentImage * pImage, CRect rc) Line 872               C++

ToolkitPro1730vc140UD.dll!CXTPMarkupDrawingContext::DrawImage(CXTPMarkupDeviceDependentImage * pImage, CRect rc) Line 845         C++

ToolkitPro1730vc140UD.dll!CXTPMarkupImage::OnRender(CXTPMarkupDrawingContext * pDC) Line 230           C++

ToolkitPro1730vc140UD.dll!CXTPMarkupVisual::Render(CXTPMarkupDrawingContext * drawingContext) Line 878              C++

ToolkitPro1730vc140UD.dll!CXTPMarkupVisual::Render(CXTPMarkupDrawingContext * drawingContext) Line 884              C++

ToolkitPro1730vc140UD.dll!XTPMarkupRenderElement(CXTPMarkupUIElement * pElement, HDC__ * hDC, const tagRECT * lpRect) Line 131  C++

ToolkitPro1730vc140UD.dll!CXTPButtonTheme::DrawButtonText(CDC * pDC, CXTPButton * pButton) Line 418   C++

ToolkitPro1730vc140UD.dll!CXTPButtonTheme::DrawButton(CDC * pDC, CXTPButton * pButton) Line 119          C++

ToolkitPro1730vc140UD.dll!CXTPButton::DoDraw(CDC * pDC) Line 396                C++

ToolkitPro1730vc140UD.dll!CXTPButton::OnDraw(CDC * pDC) Line 382                C++

ToolkitPro1730vc140UD.dll!CXTPButton::OnPaint() Line 349                C++

 

Back to Top
 Post Reply Post Reply
  Share Topic   

Forum Jump Forum Permissions View Drop Down

Forum Software by Web Wiz Forums® version 12.04
Copyright ©2001-2021 Web Wiz Ltd.

This page was generated in 0.148 seconds.