Cursor setzen?



  • Ich möchte, das wenn die Maus über mein Button geht, sich der Cursor verändert.
    Klappt auch prima.

    BOOL CPortalDlg::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message) 
    {
    	CRect rect;
    	m_Banner.GetWindowRect(&rect);
    	ScreenToClient(&rect);
    
    	CPoint point;
    	GetCursorPos(&point);
    	ScreenToClient(&point);
    
    	if (rect.PtInRect(point) && m_hCursor)
    	{
    		SetCursor(m_hCursor);
    		return TRUE;
    	};
    
    	return CDialog::OnSetCursor(pWnd, nHitTest, message);
    }
    

    Jetzt habe ich alerdings mehrere Button bei denen das passieren soll.
    Wenn ich jetzt z.B.

    CRect rect;
    m_Banner.GetWindowRect(&rect);
    m_GS1.GetWindowRect(&rect);
    

    angebe, kriege ich die Cursoränderung nur bei m_GS1 und nicht mehr bei m_Banner. Also immer nur beim letzten angegebenen.

    Wie kann ich das ändern???? 😕



  • 😕 😕

    CRect r1,r2; 
    m_Banner.GetWindowRect(&r1); 
    m_GS1.GetWindowRect(&r2);
    


  • Hi CMatt,

    Aber was muß ich dann bei

    ScreenToClient(&rect);
    

    angeben?
    &r1
    &r2
    Oder ist das egal?



  • du musst es auf jeder variable einmal aufrufen


Anmelden zum Antworten