Zitat:
Aber wenn das Fenster minimiert ist, bleibt es minimiert.
Verhindere doch einfach das man es minimieren kann.
Also sobald jemand das Fenster minimieren will setze es auf Hide.
und auf visible wenn du es in den Vordergrund bringen willst.
gruss
Das wäre eine (Not)lösung. Allerdings ist mir auch nicht klar wie ich verhindern kann, dass ein Fenster minimiert wird - Irgendwas auf die Art von OnMinimize oder OnCanMinimize habe ich bei den Formular-Events nicht gefunden.
Ich vermute mal, dass du die ganzen Überwachungsaktionen im Main Thread machst. Dadurch ist deine Anwendung wahrscheinlich so ausgelastet, dass keine Zeit mehr für das Zeichnen der Form bzw. zum Verarbeiten von Messages bleibt. Unschöne Abhilfe könnte ein Application.ProcessMessages;
nach einer bestimmten Anzahl von Zeichendurchläufen bringen.
Besser wäre es aber, wenn du die Webcam in einem anderen Thread abfrägst und die Daten dort verarbeitest. Dann bleibt auch dein Programm bedienbar.
Nein, Ausgelastet ist gar nichts. Alle Minuten wird ein neues Bild geholt und untersucht. Das wird über einen Timer aktiviert, in der Wartezeit, bis der Timer ausgelöst wird, passiert nichts. In der Timer Routine wollte ich als erstes das Formular aus der Taskleiste herauf holen, falls es minimiert worden ist. Und das geht nicht. Wenn das Programmicon in der Taskleiste von Hand angeklickt wird, wird das Formular sofort angezeigt, und dann funktioniert auch wieder alles andere. Bloß aus dem Programm heraus gelingt es mir nicht, das Fenster aus der Taskleiste wieder sichtbar zu machen. Genau das müsste aber doch eigentlich durch
windowstate:=wsnormal;
erreicht werden, oder?