AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit checkbox.checked := true

Ein Thema von MarcusB · begonnen am 22. Aug 2004 · letzter Beitrag vom 23. Aug 2004
 
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.045 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#11

Re: Problem mit checkbox.checked := true

  Alt 23. Aug 2004, 09:50
Zitat von MarcusB:
Warum setzt

  checkbox.Perform(BM_SETCHECK, 1, 0); zwar den Haken in die Checkbox, aber die Property "Checked" ist immer noch false?

Und bei der Lösung von scp

Delphi-Quellcode:
  checkbox1.OnClick := nil;
  checkbox1.checked := true;
verstehe ich nicht, dass nach OnClick := nil doch wieder checked:=true aufgerufen wird, was doch eigentlich wieder OnClick auslöst
1. Dieser Befehl ist aus der Windows-API und dort hat eine Checkbox kein Checked-Property, wie in Delphi (also schon eins, ob die Box angehakt ist oder nicht, aber der Bool-Wert Checked in TCheckBox ist quasi zusätzlich) Das heißt, eine Änderung über die Win-API hat keine Änderung des Checked-Status einer TCheckBox zufolge andersrum aber schon (Check auf true setzen zeichnet die Box neu)

2. Intern wird die Funktion Click aufgerufen und die macht folgenden Befehl (vereinfacht):
Delphi-Quellcode:
if Assigned(FOnClick) then
  FOnClick(Self);
Das heißt, wenn OnClick (ist ja nur ein Methodenzeiger) nicht gesetzt ist (was ja mit dem := nil bewerkstelligt wurde), dann wird die Funktion auch nicht aufgerufen, wenn du Checked setzt.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz