Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   TListBox ListBox1MouseActivate ItemIndex? (https://www.delphipraxis.net/193607-tlistbox-listbox1mouseactivate-itemindex.html)

Uwe Raabe 21. Aug 2017 16:49

AW: TListBox ListBox1MouseActivate ItemIndex?
 
Zitat:

Zitat von Glados (Beitrag 1379159)
Wenn der Array-Index für dieses Item nun False ist, dann soll der ItemIndex der ListBox nicht auf das angeklickte Item gesetzt werden.

Hier ein Beispiel, bei dem alle ungeraden Zeilen nicht angewählt werden können:

Delphi-Quellcode:
procedure TForm207.ListBox1MouseActivate(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y, HitTest:
    Integer; var MouseActivate: TMouseActivate);
var
  idx: Integer;
begin
  idx := ListBox1.ItemAtPos(Point(X, Y), True);
  if Odd(idx) then begin
    MouseActivate := maNoActivateAndEat;
  end;
end;

Glados 21. Aug 2017 17:05

AW: TListBox ListBox1MouseActivate ItemIndex?
 
Delphi-Quellcode:
maNoActivaeAndEat
Das hat geholfen!

Ich habe es nun so umgesetzt:
ListBox-OnMouseActive wird bei Mausklick als erstes ausgelöst. Dort prüfe ich, ob das angeklickte Item selektiert werden kann. Wenn nicht, wird maNoActivaeAndEat gesetzt.
Darf das Item selektiert werden (maNoActivaeAndEat nicht gesetzt), wird automatisch in ListBox-OnClick gesprungen. Sonst nicht. Funktioniert einwandfrei danke.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:04 Uhr.
Seite 2 von 2     12   

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