[Risolto]TxtBox con testo predefinito in Finestra di Dialogo

Creare una macro - Scrivere uno script - Usare le API
Rispondi
Avatar utente
Biagio91
Messaggi: 238
Iscritto il: mercoledì 3 febbraio 2021, 20:25

[Risolto]TxtBox con testo predefinito in Finestra di Dialogo

Messaggio da Biagio91 »

Ciao,

Presupponendo che in una finestra di dialogo che si chiama DlgEsempio ci sia una TextBox vuota che si chiama txt1, come fare da codice a impostare che all'apertura della dlg si utilizzi un determinato dato scritto nel codice come stringa di testo della txt1? Si vorrebbe infatti rendere quella casella di testo di SolaLettura oppure non abilitata, per usare solo i valori predefiniti dal codice. Ho provato come segue

Codice: Seleziona tutto

dim Dlg As Object
sub MostraDlg
DialogLibraries.LoadLibrary("Standard")
Dlg = CreateUnoDialog(DialogLibraries.Standard.DlgEsempio)
Dlg.Execute()
txtProva=Dlg.GetControl("txt1").Text
txtProva="CiaoBelli!!!"
End Sub
C'è qualcosa di sbagliato ovviamente perché all'apertura della Dialog non mi trovo la txt1 popolata con la stringa "CiaoBelli!!!" e questo è il mio obiettivo.

Ho risolto chiamando prima la frase e poi la dlg, e non definendo la variabile txtProva; ma non ho capito perché, come mai così funziona e nell'altro metodo no...qualcuno ha una dritta da darmi??

Codice: Seleziona tutto

dim Dlg As Object
sub MostraDlg
DialogLibraries.LoadLibrary("Standard")
Dlg = CreateUnoDialog(DialogLibraries.Standard.DlgEsempio)
Dlg.GetControl("txt1").Text="CiaoBelli!!!"
Dlg.Execute()
End Sub
Grazie mille
Ultima modifica di Biagio91 il mercoledì 12 maggio 2021, 16:15, modificato 1 volta in totale.
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
Gaetanopr
Volontario
Volontario
Messaggi: 3300
Iscritto il: mercoledì 21 novembre 2012, 20:07

Re: TxtBox con testo predefinito in Finestra di Dialogo

Messaggio da Gaetanopr »

Biagio91 ha scritto: Ho risolto chiamando prima la frase e poi la dlg, e non definendo la variabile txtProva; ma non ho capito perché, come mai così funziona e nell'altro metodo no...qualcuno ha una dritta da darmi??
La variabile txtProva si riferisce al testo della textbox e non all'oggetto textbox per questo non puoi impostare il testo per come hai fatto tu.

Codice: Seleziona tutto

Dlg.GetControl("txt1").Text="CiaoBelli!!!"
questo è il modo corretto.
oppure così

Codice: Seleziona tutto

txtProva = Dlg.GetControl("txt1")
 txtProva.Text = "CiaoBelli!!!"
LibreOffice 7.2.2.2 windows 10
Openoffice 4.1.13 su windows 10
Avatar utente
Biagio91
Messaggi: 238
Iscritto il: mercoledì 3 febbraio 2021, 20:25

Re: [Risolto]TxtBox con testo predefinito in Finestra di Dia

Messaggio da Biagio91 »

Ora è tutto molto più chiaro.

Grazie mille
OpenOffice 4.1.8 su Windows 7-10
::::May we meet again into the matrix::::
Rispondi