højreklik i listbox

Tags:    delphi

Hej udviklere,

Jeg har en listbox på min fom med en tilknyttet popupmenu. Når jeg venstre klikker på en linje i min listbox makeres den. Hvordan gør jeg så når jeg højreklikker makeres linjen og popupmenuen vises?
Ligesom f.eks i stifinder når man højreklikker på en fil eller mappe.

På forhånd tak for hjælpen


Mvh
Anders



3 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
For at få markeret linjen i Listboxen skal du bruge følgende :

Brug : ItemAtPos(Pos: TPoint; Existing: Boolean): Integer;
Den retunere index under musen eller –1 hvis der ikke er noget i linjen under musen.

I OnMouseDown code:
procedure TForm1.Listbox1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
MousePos : TPoint;
OverItemIndex : integer;

begin
MousePos.x := X;
MousePos.y := Y;

if Button = mbRight then
begin
OverItemIndex := listbox1.ItemAtPos(MousePos,False);
listbox1.ItemIndex:=OverItemIndex;
end;
end;

Dette skulle markere/vælge den linje du højre klikker på.



Opret en TPopupMenu på din form, og brug dens menueditor til at designe den. Derefter kan du bare sætte din listbox' popup property til din TPopupMenu.

MH.

The-Freak

Livet er for kort til at kede sig.



Tak for dit svar

Ja så vises popupmenuen når jeg højreklikker, men linjen jeg højreklikker på makeres ikke og det var faktisk det spørgsmålet gik på.

Mvh

Anders



Opret en TPopupMenu på din form, og brug dens menueditor til at designe den. Derefter kan du bare sætte din listbox' popup property til din TPopupMenu.

MH.

The-Freak

Livet er for kort til at kede sig.





t