gugelhupf Geschrieben 22. August 2002 Geschrieben 22. August 2002 Ich hasse es solche Thread aufmachen zu müssen, aber ich finds einfach nicht. Ich möchte mein CListCtrl auf Mehrfachauswahl im Programm stellen. Aber ich finde den Style einfach nicht ! Also nicht im Editor auf Mehrfachauswahl sondern zur Laufzeit !
gugelhupf Geschrieben 22. August 2002 Autor Geschrieben 22. August 2002 Danke funzt ! Weiteres Problem: Ich hab ne Klasse von CListCtrl abgeleitet, weil ich will dass man auf das Drücken der "Enter"Taste ebenso Daten selektieren kann wie durch NM_DBLCLK. Nun fange ich das Ereignis der EnterTaste für das Control durch PreTranslateMessage ab. Nachdem das erfolgt ist, muss ich ja aus meiner MyListCtrl Klasse eine Message an das entsprechende Dialogfeld mit dem entsrpechenden LIstCtrl schicken. SendMessage(WM_NOTIFY,NM_DBLCLK,NULL); funzt nicht. Stürzt ab. Ideen ???
Klotzkopp Geschrieben 22. August 2002 Geschrieben 22. August 2002 NULL dürfte das Problem sein. Der lParam der NM_DBLCLK-Nachricht muss die Adresse einer NMHDR-Struktur enhalten. Ab Version 4.71 der Comctl32.dll wird als lParam offenbar sogar die Adresse einer NMITEMACTIVATE-Struktur erwartet. Nach dem, was ich gefunden habe, müssen iItem, iSubItem und ptAction mit gültigen Daten gefüllt sein.
gugelhupf Geschrieben 23. August 2002 Autor Geschrieben 23. August 2002 Aber SendMessage erwartet doch im 3.Parameter einen long-Wert ?!
gugelhupf Geschrieben 23. August 2002 Autor Geschrieben 23. August 2002 Hat sich erledigt. Man "biegt" einfach die eingehende Doppel-Click-Nachricht um: BOOL CMyListCtrl::PreTranslateMessage(MSG* pMsg) { if(pMsg->message==WM_KEYDOWN) { if(pMsg->wParam==13) pMsg->message=WM_LBUTTONDBLCLK; } return CListCtrl::PreTranslateMessage(pMsg); } [/PHP]
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden