Domino 9 und frühere Versionen > ND6: Entwicklung

CurrentField ohne Focusverlust

(1/3) > >>

mibo11:
Vielleicht hat jemand eine Idee und bringt mich auf andere Gedanken.

Innerhalb einer Dialogbox brauche ich nun einen Button, der das aktuelle Feld ausliest. UIDoc.Currentfield fällt mir da so als Lösung ein, jedoch wird der Focus durch den Klick auf den Button verschwinden und so keinen Feldnamen zurückliefern. Eine Aktionsschaltfläche würde den Focus nicht verändern, fällt jedoch innerhalb einer Dialogbox aus.

Gibt es noch andere Möglichkeiten?

Gruß Sascha

..Andreas..:
Ein kleines Script in den Entering-Event jedes Feldes der Dialogmaske, das den aktuellen Feldnamen "irgendwo" (ini, spezielles Feld, globale Variable, ...) hinschreibt? Das kannst Du dann im Buttonsourcecode auslesen.

Andreas

Glombi:
Wenn der Button auch in Script geschrieben ist, würde ich eine globale Variable (d.h. unter Declaration in Globals der Maske definiert) verwenden.

Wie Sascha geschrieben hat, den Wert im Entering setzen und auch im Exiting wieder zurücksetzen.

Andreas

Semeaphoros:
Andreas, bist Du sicher, dass das Exiting nicht feuert, wenn man einen Buhtong betätigt? Nach Windows-Modell müsste das bei Focusverlust feuern (das ist aber nicht überall tatsächlich der Fall). Insofern wäre ich mit dem Exiting-Event hier vorsichtig und würde statt das Löschen des Entering-Flags ein zweites Exiting-Flag verwenden

Glombi:
Meiner Erfahrung nach wird das Exiting Event nicht ausgelöst, wenn man einen Button anklickt. Aber das wäre noch mal zu testen.

Ich hatte es eigentlich nur erwähnt, damit das ganze etwas sauberer ist. Sonst hüpft der Cursor von einem Feld ins andere und das andere hat kein Entering. Dann "denkt" der Button, der Cursor steht noch im ersten Feld.

Andreas

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln