Click here to Skip to main content
Rate this: bad
good
Please Sign up or sign in to vote.
See more: VC6 MFC
The CDC (SetPixel) function cannot be accessible inside the member function of another class.
 
//OnPerformIBIT is a member function created by me
void CSplitterOne:: OnPerformIBIT()
{
    CDC *myDC = GetDlgItem(IDC_PICBOX)->GetDC();
 
    myDC->SetPixel(0, 0, RGB(0,0,0));
    myDC->SetPixel(1, 1, RGB(0,0,0));
    myDC->SetPixel(2, 2, RGB(0,0,0));
    myDC->SetPixel(3, 3, RGB(0,0,0));
    myDC->SetPixel(4, 4, RGB(0,0,0));
    myDC->SetPixel(5, 5, RGB(0,0,0));
    myDC->SetPixel(6, 6, RGB(0,0,0));
}
 
//In the above function is called from MainFrm.cpp. In the same function I cannot create the object for CDC. It give assertion. I am not get the Handle for Window (hWnd).
If I am do the same in thing in OnPaint() it works. Please Help me.
 
//CSplitterOne is FormView class.
Posted 9-Mar-13 0:26am
Comments
Jochen Arndt at 9-Mar-13 7:38am
   
Is IDC_PICBOX a child window of CSplitterOn?
rajeshkumar.ramasamy at 20-Mar-13 8:02am
   
Yes, IDC_PICBOX is child window of CSplitterOne class.

1 solution

Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

It looks like you are calling GetDlgItem at a moment when the window has not been created yet. Then it's m_hWnd is still 0 and you run into an ASSERT.
 
You can easily verify this assumption by testing m_hWnd before calling GetDlgItem.
  Permalink  
Comments
rajeshkumar.ramasamy at 12-Mar-13 8:09am
   
I had Create same form using Splitter Window. I have to call the OnPerformIBIT() function from MainFrm.cpp. I am not got the handle when I am calling from MainFrm.cpp, If I put the same function from OnPaint & OnInitialUpdate, it works. How can i get the window handle if i'm call from Mainfrm.cpp?

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 OriginalGriff 490
1 Maciej Los 305
2 Richard MacCutchan 270
3 Mathew Soji 220
4 BillWoodruff 210
0 OriginalGriff 8,834
1 Sergey Alexandrovich Kryukov 7,477
2 DamithSL 5,689
3 Maciej Los 5,329
4 Manas Bhardwaj 4,986


Advertise | Privacy | Mobile
Web01 | 2.8.1411028.1 | Last Updated 14 Mar 2013
Copyright © CodeProject, 1999-2014
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100