AGB  ·  Datenschutz  ·  Impressum  







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

#FMX_kdF "Spass mit den iPad!

Ein Thema von Mavarik · begonnen am 20. Mai 2015 · letzter Beitrag vom 27. Mai 2015
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#1

#FMX_kdF "Spass mit den iPad!

  Alt 20. Mai 2015, 10:02
#FMX_kdF Diskussion zu Spass mit dem iPad!

Sorry für alle die kein iPad haben, hier der Effekt.

Mavarik
Angehängte Dateien
Dateityp: zip iPadFun.zip (372,6 KB, 33x aufgerufen)
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: #FMX_kdF "Spass mit den iPad!

  Alt 20. Mai 2015, 10:05
Frank, so bringt das wenig.
Sei doch bitte so gut und beschreibe, was da passiert. Oder eben, was da nicht passiert.

Und ein Application.ProcessMessages ist unter iOS eh nicht so üblich. Eigentlich so ganz und gar nicht, da .ProcessMessages klar die Windows (!) Message-Loop adressiert. Da sollte es wichtigere Baustellen geben.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: #FMX_kdF "Spass mit den iPad!

  Alt 20. Mai 2015, 10:24
Frank, so bringt das wenig.
Sei doch bitte so gut und beschreibe, was da passiert. Oder eben, was da nicht passiert.
Dafür das Video...

OK OK OK... nochmal als Text...

Startet man eine iPad App im Landscape Modus und hat ein Application.Processmessages im FormCreate - erhält man eine um 90° gedrehte Ansicht...
Manchmal dreht es nichtmal um dem Mittelpunkt..

Und ein Application.ProcessMessages ist unter iOS eh nicht so üblich. Eigentlich so ganz und gar nicht, da .ProcessMessages klar die Windows (!) Message-Loop adressiert. Da sollte es wichtigere Baustellen geben.
Nicht so üblich? ProcessMessages macht unter iOS "genau" das gleiche wie unter Windows, sorgt dafür, dass die Maintask die Oberfläche aufbauen kann und zwar innerhalb einer anderen Procedure...

Und das ist an machen Stellen und iOS & Android leider unverzichtbar, da eine Weiterverarbeitung von Werten sonst nicht ermöglicht wird... Das ist dadurch begründet, dass FMX leider viele Dinge erst berechnet - oder sogar existieren, wenn die Objekt angezeigt wurden.

Beispiel: Ich setze ein Element von Align.Left auf Align.Client wenn ich jetzt einen Text dynamisch per Canvas.MeasureText(... berechnen will, muss das Element erst neu gezeichnet werden sonst stimmt die Width nicht... usw...

Es gibt seit XE8 leider noch mehr Stellen als vorher die sich hier anders verhalten als XE7 und ggf. wird wieder mal ein Application.Processmessages mehr benötig...

Jetzt könnte man sich quer stellen und sagen : "Dann musst Du das anders machen...". Leider geht es manchmal nicht anders und nur weil FMX sich plötzlich anders verhält oder iOS&Android kann ich nicht die ganze App umbauen...

Aber ich gebe Dir recht... Es gibt wichtigere Fehler...

Mavarik
  Mit Zitat antworten Zitat
Darlo

Registriert seit: 28. Jul 2008
Ort: München
1.196 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#4

AW: #FMX_kdF "Spass mit den iPad!

  Alt 20. Mai 2015, 10:41
Deswegen habe ich mir angewöhnt das onCreate soweit wie möglich leer zu lassen und die Sachen in einen Timer zu verschieben.
Philip
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: #FMX_kdF "Spass mit den iPad!

  Alt 20. Mai 2015, 10:52
Deswegen habe ich mir angewöhnt das onCreate soweit wie möglich leer zu lassen und die Sachen in einen Timer zu verschieben.
Autsch... Timer... hab ich früher auch gemacht.. heute nehme ich TThread.Queue weil ein Timer so Hardwareabhängig ist... Also nicht der Timer, sondern die Zeit die gewartet werden muss...

Oder halt eine Message von type ApplicationIdle...
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.176 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

AW: #FMX_kdF "Spass mit den iPad!

  Alt 20. Mai 2015, 10:54
Ich möchte das Thema nicht entführen- Falls das ablenkt, einfach ignorieren

Könnt ihr ein konkretes Beispiel geben wofür man so etwas braucht? Ich bin eigentlich immer mit dem OnActivate -Event der Formulare sehr gut gefahren, mehr habe ich nie gebraucht.
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#7

AW: #FMX_kdF "Spass mit den iPad!

  Alt 20. Mai 2015, 11:03
Könnt ihr ein konkretes Beispiel geben wofür man so etwas braucht? Ich bin eigentlich immer mit dem OnActivate -Event der Formulare sehr gut gefahren, mehr habe ich nie gebraucht.
Neuer Thread
  Mit Zitat antworten Zitat
greenmile

Registriert seit: 17. Apr 2003
1.107 Beiträge
 
Delphi 10.3 Rio
 
#8

AW: #FMX_kdF "Spass mit den iPad!

  Alt 20. Mai 2015, 11:40
Danke für den Hinweis, ist ein kleinerer Fehler der mich schon immer gestört hat.
  Mit Zitat antworten Zitat
Darlo

Registriert seit: 28. Jul 2008
Ort: München
1.196 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#9

AW: #FMX_kdF "Spass mit den iPad!

  Alt 20. Mai 2015, 11:55
Deswegen habe ich mir angewöhnt das onCreate soweit wie möglich leer zu lassen und die Sachen in einen Timer zu verschieben.
Autsch... Timer... hab ich früher auch gemacht.. heute nehme ich TThread.Queue weil ein Timer so Hardwareabhängig ist... Also nicht der Timer, sondern die Zeit die gewartet werden muss...
Oder halt eine Message von type ApplicationIdle...
Ist nicht jeder Workaround ein "autsch"? Und ob der Timer bei einem Intervall von 1ms 500% später auslöst ist mir beim erstmaligen öffnen der App echt schnuppe
Philip
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#10

AW: #FMX_kdF "Spass mit den iPad!

  Alt 20. Mai 2015, 12:05
Deswegen habe ich mir angewöhnt das onCreate soweit wie möglich leer zu lassen und die Sachen in einen Timer zu verschieben.
Wobei ich mir da eher die Timerkomponente abgeleitet hätte, die ein OnStartUp-Event von sich aus nur einmal feuert,
oder ich hätte mir die TForm abgeleitet und ihr ein OnStartUp verpasst, daß z.B. ähnlich dem OnShow aufgerufen wird, aber eben auch nur einmal.


Oder im Windows im OnCreate ein PostMessage an die eigene Form. Das kommt an, wenn Delphi mit dem Erstellen der Form fertig ist und wieder Messages verarbeitet,
solange keiner so doof ist und das durch ein Application.ProcessMessages schrottet. (k.A. wie man das im iOS mach)
$2B or not $2B

Geändert von himitsu (20. Mai 2015 um 12:09 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 03:16 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