Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
10.995 Beiträge
 
Delphi 12 Athens
 
#9

AW: FireMonkey Problem

  Alt 16. Jul 2018, 23:33
Generell ist es kein Problem die Hint-Properties gesetzt zu haben, die werden auf den mobilen Plattformen einfach nicht berücksichtigt.
In diesem Fall ist das aber ein Fehler in FMX. Der Zugriff auf SharedHint kann nil zurückliefern, da dort bei Bedarf THint.CreateNewInstance aufgerufen wird (eben um eine Instanz zu erzeugen). Allerdings sagt die Hilfe zu CreateNewInstance:
Zitat:
Returns an instance created by the first available registered class. This method can return nil if there are no classes registered or none of the registered classes can create a THint instance.
Es werden aber nur für Windows und MacOS solche Klassen registriert. Deswegen liefert SharedHint auf allen anderen Systemen nil und der Aufruf in TriggerControlHint verursacht eine Zugriffsverletzung.

Mein Code-Schnipsel weiter oben soll das beheben, in dem er eine Dummy-Klasse registriert, die in dem oben angesprochenen Fall einspringt.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat