Seite 1 von 1

[GELÖST] Text in einem TextFeld automatisch selektieren

Verfasst: Mi, 06.05.2009 13:10
von Blaukraut
Hallo,

gibt es eine Funktion, den Text in einem TextFeld automatisch zu selektieren, so wie etwa

oTextField.SelectAll
(diese Funktion gibt es leider nicht)

so ähnlich wie die Funktion:

oTextField.SetFocus
(diese Funktion gibt es)

aber mit automatischer Selektion des gesamten Inhalts?

Danke vorab!

Oo 3.00
Win2K

Re: gesamten Text in einem TextFeld automatisch selektieren

Verfasst: Sa, 09.05.2009 13:44
von komma4
oTextfield ... ?

In einem Writer-Dokument, einem Dialog oder einem Formular?


Entweder über den CurrentController ... oder das .Model (je nachdem, müsste ich auch ausprobieren).

Re: gesamten Text in einem TextFeld automatisch selektieren

Verfasst: Sa, 09.05.2009 20:15
von Blaukraut
Hallo,

sorry für die magere Beschreibung (mea culpa maxima) :? .
Es geht um einen Dialog in einem CALC-Dokument.
Ich habe im Dialog eine DropDownListe, nach deren Auswahl ein paar Textfelder (ebenfalls in diesem Dialog) geändert werden.
Eines der Textfelder soll je nach Bedarf (nicht immer) sofort überschrieben werden können.
Daher setze ich den Fokus nach der Auswahl auf dieses Textfeld. Um den Inhalt zu ändern muss ich nun den alten Text zunächst von Hand löschen.
Es wäre daher sehr praktisch, wenn dieses Textfeld nicht nur den Fokus erhält, sondern deren Text auch sofort komplett markiert wird, um diesen ggf. sofort überschreiben zu können.

Gruß, Blaukraut

Re: gesamten Text in einem TextFeld automatisch selektieren

Verfasst: Sa, 09.05.2009 21:28
von turtle47
Hallo Blaukraut,

versuche es mal so:

Code: Alles auswählen

Sub MarkText
	myTextfield = oDialog1.GetControl("TextField1")
	myTextfield.setfocus
	oSelection.Min = 0
	oSelection.Max = 20
	myTextfield.setSelection(oSelection)
End Sub
Hilft das?

Jürgen

Re: gesamten Text in einem TextFeld automatisch selektieren

Verfasst: So, 10.05.2009 12:02
von ykcim
Hallo Turtle,

da fehlt noch eine Zeile für das oSelection-Struct.

Code: Alles auswählen

Sub MarkText
   myTextfield = oDialog1.GetControl("TextField1")
   myTextfield.setfocus
   Dim oSelection As New com.sun.star.awt.Selection
   oSelection.Min = 0
   oSelection.Max = 20
   myTextfield.setSelection(oSelection)
End Sub
mfg
Michael

Re: gesamten Text in einem TextFeld automatisch selektieren

Verfasst: So, 10.05.2009 12:18
von turtle47
Hallo Michael,

Oh ja, du hast natürlich recht.
Habe ich übersehen weil es im Kopfteil des Codes stand.

Danke für den Hinweis.

Jürgen

-GELÖST- gesamten Text in einem TextFeld automatisch selekti

Verfasst: So, 10.05.2009 20:00
von Blaukraut
Hallo,

Ihr seid spitze.
So funktioniert es :D .
Besten Dank und schönen Abend!

Blaukraut