Was ich in C/C++ kann, fehlt mir offenbar in Basic. Folgendes Problem:
Mit der Funktion "eingeben" erscheint in Basic ein Eingabefenster; ich möchte aber nun ( wie bei C) dass in einem Fenster der Wert einer (string-)Variuablen angezeigt wird und ich diesen Wert beliebig verändern und dann wieder in die Variable zurückgeben kann. So eben, wie man in C (Dialog-)Masken programmieren kann.
Ich bräuchte da wieder einmal Nachhilfe.
Max
❤️ Helfen Sie noch heute, unser LibreOffice Forum zu erhalten! ❤️
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
EA-Felder
Re: EA-Felder
Hallo
Es gibt keine Funktion `eingeben` in Basic ... meinst du
Es gibt keine Funktion `eingeben` in Basic ... meinst du
Code: Alles auswählen
x = inputbox("stimmts so ??? " , , x) LO25.2.x.y debian 13(trixie) auf Raspberry5 8GB (64bit)
LO25.8.x.y flatpak debian 13(trixie) auf Raspberry5 8GB (64bit)
LO25.8.x.y flatpak debian 13(trixie) auf Raspberry5 8GB (64bit)
-
MaximilianWe
- Beiträge: 40
- Registriert: So 7. Aug 2011, 22:28
Re: EA-Felder
Ich habe mir da über die Möglichkeiten bei Tabellen eine Funktion gebastelt:
Function eingeben (tab as integer, pos as string, auff as string)
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
cellinhalt= inputbox (auff)
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name="ToPoint"
args1(0).Value= pos
dispatcher.executeDispatch(document,".uno:GoToCell", "" ,0, args1())
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name= "StringName"
args2(0).value=cellinhalt
dispatcher.executeDispatch(document,".uno:EnterString", "", 0, args2())
eingeben = cellinhalt
end Function
Ist wahrscheinlich schrecklich unmständlich, aber als Eingabe funktionierts. Aber icvh kann in das Feld eben nicht einen Anfangswert übernehmen.
Function eingeben (tab as integer, pos as string, auff as string)
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
cellinhalt= inputbox (auff)
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name="ToPoint"
args1(0).Value= pos
dispatcher.executeDispatch(document,".uno:GoToCell", "" ,0, args1())
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name= "StringName"
args2(0).value=cellinhalt
dispatcher.executeDispatch(document,".uno:EnterString", "", 0, args2())
eingeben = cellinhalt
end Function
Ist wahrscheinlich schrecklich unmständlich, aber als Eingabe funktionierts. Aber icvh kann in das Feld eben nicht einen Anfangswert übernehmen.
Re: EA-Felder
Hallo
Aufrufen aus Calc zB. per
ich würde da eigentlich gleich etwas in die Zelle eingeben statt indirekt über selbstgebastelte Funktionen mit InputBox'en
Code: Alles auswählen
Function eingeben(kopf,vorgabe)
eingeben = inputbox(kopf, ,vorgabe)
End Function
Code: Alles auswählen
=EINGEBEN("häh ?"; AKTUELL()) LO25.2.x.y debian 13(trixie) auf Raspberry5 8GB (64bit)
LO25.8.x.y flatpak debian 13(trixie) auf Raspberry5 8GB (64bit)
LO25.8.x.y flatpak debian 13(trixie) auf Raspberry5 8GB (64bit)
An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:
Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.