Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

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

AW: Alle Elemente vom Formular enable := false ?

  Alt 19. Jul 2012, 19:05
Zitat:
Wäre ein Thread nicht eine sauberere Lösung?
Sagen wir es mal so, wenn alles im Hauptthread läut und man der Form/Application keine Möglichkeit der Messageverarbeitung gibt, dann kann man sich das Disablen auch sparen.

So oder so, ob mit regelmäßigen ProcessMessages oder mit Thread ... man sollte das "sperren", was nicht rekursiv/geichzeitig aufgerufen werden darf/soll.


Zitat:
jede
Wenn etwas schnell ist, dann kann man damit alles ausbremsen.
- entweder mit fester Schrittweite z.B. nur jeden 100-ten
- oder zeitgesteuert die Anzeige auffrischen, bzw. den Fortschritt anzeigen.
z.B. alle 100-250 Millisekkunden sind flüssig oder eben alle 1 Sekunde

PS: BeginUpdates der ListBox beschleunigt auch die Verarbeitung und es guckt eh kaum jemand sich alle 50000000 Einträg der Box an, vorallem nicht, wenn man eine schöne ProgressBar/Counter zur Verfügung hat.





Die Form Disablen?

Oder die entsprechenden Komponenten auf ein/mehrere TPanel und dann das/die Panel disablen.

Oder ein modales "Progess"-Fenster an diese Form hängen (dabei wird die Form automatisch disabled)

Oder ...
- du schaust dir die Vererbung an
- suchst einen gemeinsamen Vorfahren, welcher die gewünschte Eigenschaft/Funktion enthält oder gar implementiert
- dann geht man alle Components oder rekursiv die Controls (jenachdem wie die Owner vergeben sind) der Form durch
- prüft auf diesen Vorfahren und verwendet den passenden Cast, um auf diese Eigenschaft/Funktion zuzugreifen.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (19. Jul 2012 um 19:13 Uhr)
  Mit Zitat antworten Zitat