Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

killmichnich

unregistriert

1

13.10.2010, 16:46

Winapi: Menü öffnen bei Rechtsklick auf Element einer Listbox

Hiho Community,
ich denk der Titel sagt schon fast alles ^^
Erste Sache ist, dass ich gerne auf einen Rechtsklick auf ein Element einer Listbox reagieren würde. Ich hab mir die verschiedenen Benachrichtigungen, die eine Listbox erhält angeschaut, und da leider nichts gefunden, und weiß nicht, wie ich das sonst lösen soll. Bei der Listbox handelt es sich um eine ganz gewöhnliche Listbox:

C-/C++-Quelltext

1
    hListBox = CreateWindow("LISTBOX", NULL, WS_CHILD | WS_VISIBLE | LBS_NOTIFY | WS_VSCROLL, 360, 20, 164, 145, hwnd, (HMENU)ID_LB_OBJECTS, hThisInstance, NULL);

Die 2. Sache wäre dann, wie ich so ein Popup Menü im Fenster realisieren gehen, dass dann aufgeht und verschiedene Optionen anbietet, was ich mit dem jeweiligen Element anstellen kann ^^
Auch hierfür hab ich leider nix gefunden, deshalb frag ich jetzt mal hier nach ^^

Ich hoffe sehr ihr wollt/könnt mir helfen :)

MfG Killmichnich

killmichnich

unregistriert

3

13.10.2010, 17:56

Hmm ja danke die Links ham mir zumindest schonmal ein bisschen weitergeholfen ^^
Ich hab aber wieder 2 Probleme damit:
1. Ich registrier jetzt den Rechtsklick in die Listbox, das Problem is nur, dass per Rechtsklick ja kein Element ausgewählt wird. Das würde ich aber eigtl. brauchen ^^
2. Problem hab ich beim öffnen/erstellen des Menüs
Ich bin in der Beziehung leider kein Profi, ich hab das ganze mal so versucht:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
"resource.h"
#define MENU_POPUP_MAIN 1000
#define MENU_POPUP_EDIT 1001
#define MENU_POPUP_DELETE 1002

"resource.rc"
MENU_POPUPMAIN MENU
BEGIN
        MENUITEM "&Edit" MENU_POPUP_EDIT
        MENUITEM "&Delete" MENU_POPUP_DELETE
END

"main.cpp"
TrackPopupMenu((HMENU)MENU_POPUP_MAIN, TPM_CENTERALIGN | TPM_VCENTERALIGN | TPM_LEFTBUTTON | TPM_NOANIMATION, 50, 50, 0, hwnd, NULL);

Nur leider funktioniert das ganze auch nicht, wie muss ich das denn abändern?

Werbeanzeige