Hi Leutz,
ich hab ne Frage bzgl. Popups, ich hab eine Form mit nem Menü bei rechtsklick wird ein Popup angezeigt wenn ich so mach direct über dem MausCursor wie mans gewöhnt ist :
Wenn ich aber erreichen möchte dass je nach dem wo ich hinklicke ein anderes Menü erscheint, werden die 2 versch. Popups viel zu weit links angezeigt, ich habs in OnButtonDown gemacht :
Alles anzeigen
Wisst ihr was ich falsch mache und wies richtig geht ?
regards
ShadowEater
ich hab ne Frage bzgl. Popups, ich hab eine Form mit nem Menü bei rechtsklick wird ein Popup angezeigt wenn ich so mach direct über dem MausCursor wie mans gewöhnt ist :
Quellcode
- void CKontextmenueDlg::OnContextMenu(CWnd* pWnd, CPoint point)
- {
- CMenu *m_lMenu = NULL; // Zeiger vom Typ Menü erstellen
- m_lMenu = GetMenu(); // Zeiger auf Fenstermenü holen
- m_lMenu = m_lMenu->GetSubMenu(0); // Zeiger auf erstes Untermenü holen
- m_lMenu->TrackPopupMenu(TPM_CENTERALIGN|TPM_LEFTBUTTON,point.x, point.y, this, NULL); // Popup-Menü anzeigen
- }
Wenn ich aber erreichen möchte dass je nach dem wo ich hinklicke ein anderes Menü erscheint, werden die 2 versch. Popups viel zu weit links angezeigt, ich habs in OnButtonDown gemacht :
Quellcode
- void CDLG_MenueDlg::OnRButtonDown(UINT nFlags, CPoint point)
- {
- CMenu *pMenu = NULL;
- pMenu = GetMenu ();
- if (point.x < 218)
- {
- pMenu = pMenu->GetSubMenu(0); // Zeiger auf erstes Untermenü holen
- pMenu->TrackPopupMenu(TPM_CENTERALIGN|TPM_LEFTBUTTON, point.x, point.y, this, NULL); // Popup-Menü anzeigen
- }
- else if (point.x > 218)
- {
- pMenu = pMenu->GetSubMenu(1); // Zeiger auf zweites Untermenü holen
- pMenu->TrackPopupMenu(TPM_CENTERALIGN|TPM_LEFTBUTTON, point.x, point.y, this, NULL); // Popup-Menü anzeigen
- }
- }
Wisst ihr was ich falsch mache und wies richtig geht ?
regards
ShadowEater