Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi [XE5]: ChecklistBox mit Mehrfachauswahl sicher abfragen (https://www.delphipraxis.net/178859-%5Bxe5%5D-checklistbox-mit-mehrfachauswahl-sicher-abfragen.html)

Kralle 1. Feb 2014 06:58

[XE5]: ChecklistBox mit Mehrfachauswahl sicher abfragen
 
Moin,

mittels
Delphi-Quellcode:
procedure TFrameTechDaten.chklst_TechDatenClick(Sender: TObject);
begin
 if chklst_TechDaten.Selected[10] = True then
   lbledt_Wirkungsgrad.Enabled:=True
 else
   lbledt_Wirkungsgrad.Enabled:=False;

end;
lässt sich leider nicht sicher abfragen ob der Eintrag wirklich checked ist oder nicht.
Der Grund steht in der OH:
Zitat:

Ein Eintrag gilt als ausgewählt, wenn der Benutzer ihn markiert. Wenn Sie die Eigenschaft MultiSelect auf true setzen, können mehrere Einträge des Listenfeldes ausgewählt werden. In diesem Fall wird der von Selected angegebene Eintrag aktiviert, wenn das Listenfeld den Fokus erhält.
Folge: Auch wenn der Eintrag checked ist, bleibt das Edit nicht anwählbar, bis der Focus wieder auf dem checked Item liegt.

Wie frage ich also sicher den Status eines Items ab?

Gruß Heiko

Sir Rufo 1. Feb 2014 07:56

AW: [XE5]: ChecklistBox mit Mehrfachauswahl sicher abfragen
 
Irgendwie nicht so schwierig, gell?

Delphi-Referenz durchsuchenTCheckListBox.Checked vs. Delphi-Referenz durchsuchenTCheckListBox.Selected

BTW das hier
Zitat:

Zitat von Kralle (Beitrag 1246202)
Delphi-Quellcode:
procedure TFrameTechDaten.chklst_TechDatenClick(Sender: TObject);
begin
 if chklst_TechDaten.Selected[10] = True then
   lbledt_Wirkungsgrad.Enabled:=True
 else
   lbledt_Wirkungsgrad.Enabled:=False;
end;

geht ja einfacher und insgesamt lesbarer so
Delphi-Quellcode:
procedure TFrameTechDaten.chklst_TechDatenClick(Sender: TObject);
begin
 lbledt_Wirkungsgrad.Enabled := chklst_TechDaten.Selected[10];
end;

Kralle 1. Feb 2014 08:19

AW: [XE5]: ChecklistBox mit Mehrfachauswahl sicher abfragen
 
Guten Morgen Sir Rufo,

Zitat:

Zitat von Sir Rufo (Beitrag 1246203)

Aua, ich glaube es war heute Morgen zu früh.
Zitat:

Zitat von Sir Rufo (Beitrag 1246203)
geht ja einfacher und insgesamt lesbarer so
Delphi-Quellcode:
procedure TFrameTechDaten.chklst_TechDatenClick(Sender: TObject);
begin
 lbledt_Wirkungsgrad.Enabled := chklst_TechDaten.Selected[10];
end;

Stimmt sieht übersichtlicher aus.

Gruß Heiko


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:57 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