Name eines Textfeldes

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Name eines Textfeldes

von Ramses » Di, 27.07.2004 13:14

Danke an Stephan

funktioniert jetzt genauso wie ich es mir vorgestellt habe :)

Gruß
Ramses

von Stephan » Do, 22.07.2004 13:27

Hallo Ramses,

ja - jetzt verstehe ich. Du willst also das das startet ohne das Du für alle relevanten Felder für das Ereignis 'Fokus' ein Makro zuordnen mußt.
Das geht mit einem Listener. Es gibt im OpenOffice Developerskit eine Beispieldatei wo dieses Vorgehen für Optionsfelder erläutert ist. Die Informationen in dieser Datei sollten sich auch für Dein Problem verwenden lassen. Genau kann ich das jetzt noch nicht sagen, aber ich glaube schon.

Willst Du nicht das ganze Developerskit herunterladen, hinterlaß mir Deine Email-Adresse indem Du mir hier über das Forum eine Email schickst, ich suche dann die Datei heraus und schicke sie Dir.

Gruß
Stephan

von Ramses » Do, 22.07.2004 08:48

Hallo Stephan

Genau das will ich ja vermeiden.
Den Ansatz mit der Funktion bzw. der Procedure,die dann die Funktion aufruft habe ich auch so realisiert.
Es sieht aber einfach nicht so "schön" aus. :)
Zumal ich dann ja für jedes Feld, eine eigene Procedure schreiben muss, die für sich dann die Funktion aufruft. (Ist dann wohl nicht gerade das, was man Redundanzfrei nennen würde)

Daher dachte ich an eine Möglichkeit, eine Procedure zu schreiben, die alle Felder aufrufen können (bei Fokuserhalt).
Erst in dieser Procedure wird der Name des aktiven Feldes ermittelt...

Code: Alles auswählen

Dim oDlg as Object      'Dialog - Globale Variable

Sub Feld

Dim aFelderGesamt()

aFelderGesamt() = oDlg.getElementNames       'Damit bekomme ich alle Felder im Dialog

End Sub
Das bedeutet doch aber auch, dass man mit einer bestimmten Methode auch das aktive Feld ansprechen kann, oder? Und genau da muss ich passen :(

Dennoch danke

Ramses

von Stephan » Mi, 21.07.2004 19:35

Da sind einige Felder, die bei Fokuserhalt eine Procedure ausführen müssen.

Schreibst Du Deine Anweisungen als Function:

Function TuWas (Feld As String)
...
End Function


und übergibst in dem Makro was dem Ereignis Fokuserhalt des jeweiligen Feldes zugeordnet ist den Namen:

Sub BeiFokuserhalt
Ergebnis = Tuwas (Name des Feldes)
...
End Sub



Gruß
Stephan

Name eines Textfeldes

von Ramses » Mi, 21.07.2004 14:15

Hallo Leute

ich habe ein Problem. :(

Ich habe hier ein Dialog vor mir. Da sind einige Felder, die bei Fokuserhalt eine Procedure ausführen müssen. Soweit ist auch alles okay.
Mein Probl. ist aber, dass es viele Felder sind, die alle ein und das selbe machen müssen (jeweils auf das aktuelle Feld abgestimmt)

Dafür muss ich aber meinem Progr. mitteilen, welches Feld gerade den Fokus hat bzw. wie dieses Feld heißt.

Ich habe nun alles versucht, hab aber scheinbar ein Brett vor'm Kopf :)

Hat jemand einen Vorschlag?

Danke

Ramses

Nach oben