Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Gibt es Restriktionen für die Schachtelungstiefe ? (https://www.delphipraxis.net/27918-gibt-es-restriktionen-fuer-die-schachtelungstiefe.html)

alfred 17. Aug 2004 13:06


Gibt es Restriktionen für die Schachtelungstiefe ?
 
Hi Leute,

ich habe folgendes problem :

in meinem formular gibt es 33 comboboxen und am ende ein edit - feld.
alle boxen haben ein ereignis onenter, am ende der ereignisprozeduren wird jeweils
der focus an die folgende box weitergegeben. damit wird onenter ausgelöst.
also a-ruft-b, b-ruft-c, c.....
von der letzen box bekomme ich den focus nicht auf das edit-feld übertragen. wenn die
letzte box übersprungen wird und die übergabe von der vorletzen erfolgt, dann klappt das, gleiches tritt ein, wenn an irgendeiner stelle eine box übersprungen wird, so dass die schachtelungstiefe geringer wird. das problem kommt also nicht von der letzten combobox. weder im debug-modus noch an anderen Stellen erscheinen fehlermeldungen.

hat jemand eine ahnung, woran das liegen kann ?

gruss alfred :witch:

Niko 18. Aug 2004 16:34

Re: Gibt es Restriktionen für die Schachtelungstiefe ?
 
Hi,

an der Schachtelungstiefe dürfte es nicht liegen, denn die ist IMHO nur durch die Stackgröße begrenzt und du bekämst bei einem Überlauf eine entsprechende Exception.

Außerdem ist es in deinem Fall gar keine Schachtelung, da du die OnEnter-Prozedur ja nicht direkt aufrufst. Du sagst Windows nur, dass es den Fokus weitergeben soll, der Aufruf kehrt zurück, die OnEnter-Prozedur wird beendet. Windows sendet der Komponente, die jetzt den Fokus erhält eine Nachricht die dazu führt, dass deren OnEnter-Ereignis ausgelöst wird u.s.w.

Vielleicht könntest du mal ein bisschen Quelltext posten.

alfred 19. Aug 2004 06:46

Re: Gibt es Restriktionen für die Schachtelungstiefe ?
 
Hi Niko,

zunächst vielen Dank für Deine Antwort. Du hast da voll recht. Nachdem ich einige Threads zur Schachtelung durchgearbeitet habe, war mir klar, dass es daran nicht liegt. Die Abläufe waren genauso, wie Du es geschildert hast. Es wurden die Prozeduren nacheinander geschlossen. Bei der letzten, also der, die die Ereigniskette ausglöst hat, war nicht mehr nachvollziehbar, welches Element die Steuerung hat. Kurioser Weise sah das letzte Erscheinungsbild so aus, dass die letzte ComboBox blau hinterlegt war. Im Edit-Feld war kein Focus sichtbar. Tastatureingaben sind aber im Edit - Feld erschienen. OnExit zeigte aber im Edit - Feld keine Wirkung. Ich habe gestern abend folgendes gemacht : den Setfocus - Befehl habe ich herausgenommen und aktiviere die onEnter - Prozedur direkt mit ...enter(self). Damit klappt es. Erklären kann ich das aber nicht.

Gruss alfred :witch:


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:23 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