Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Per Rechtsklick Eintrag markieren oder verarbeiten (https://www.delphipraxis.net/198561-per-rechtsklick-eintrag-markieren-oder-verarbeiten.html)

Moombas 14. Nov 2018 07:28

Delphi-Version: 10.2 Tokyo

Per Rechtsklick Eintrag markieren oder verarbeiten
 
Hallo zusammen,

ich habe eine (wahrscheinlich) kurze Frage aber ich komme aktuell nicht auf eine Lösung.
Problem:
Ich möchte per Rechtsklick in eine TListBox den Eintrag, auf den ich geklickt habe verarbeiten oder markieren (und dann den markierten Eintrag verarbeiten).

Den Rechtsklick "abzufangen" ist ja kein Problem:
Delphi-Quellcode:
procedure ListBoxMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if (ssRight in Shift) and (ListBox.itemindex <> -1) then
  begin
       
  end;
end;
Allerdings wie bekomme ich den Eintrag auf den man Rechtsgeklickt hat?

TiGü 14. Nov 2018 07:47

AW: Per Rechtsklick Eintrag markieren oder verarbeiten
 
Delphi-Quellcode:
procedure TForm1.ListBoxMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var
  LItemPosition: TPoint;
  LItemIndex: Integer;
begin
  if (ssRight in Shift) and (ListBox.ItemIndex <> -1) then
  begin
    LItemPosition := TPoint.Create(X, Y);
    LItemIndex := ListBox.ItemAtPos(LItemPosition, True);
    if LItemIndex > -1 then
    begin
      ShowMessage('Bin da: ' + ListBox.Items[LItemIndex]);
    end;
  end;
end;

Moombas 14. Nov 2018 08:09

AW: Per Rechtsklick Eintrag markieren oder verarbeiten
 
Danke ;) Ich wusste es ist einfach und ich kannte es einfach nicht.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:34 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz