Wir sind auf Ihre Unterstützung angewiesen!
💚 BITTE helfen Sie uns HEUTE mit einer SPENDE 💚
Helfen Sie das LibreOffice Forum zu erhalten!
> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
[gelöst]Reihenfolge der Kontrollelemente
-
- Beiträge: 30
- Registriert: Mi 20. Mär 2013, 18:07
[gelöst]Reihenfolge der Kontrollelemente
Ich schreibe in den Titel mal gelöst, auch wenn das Problem mit der Reihenfolge der Felder in Dialogen nicht wirklich gelöst ist - wahrscheinlich gibt es keine Möglichkeit, ein Feld nach vorne oder hinten zu bringen. Ich habe das Problem jetzt so gelöst, dass ich die Felder penibel nebeneinander angeordnet habe und sie sich im Zweifelsfall nicht überdecken.
Hallo Leute,
ich komme mal wieder nicht weiter. Ich benötige in meinem Dialog mit Matheaufgaben ein Wurzelzeichen über einer Summe. Zusätzlich zum Wurzelzeichen plaziere ich dafür eine horizontale Linie über der Summe. Das geht in OpenOffice wunderbar (nun ja, es ist etwas Arbeit, es an die verschiedenen Längen der Summe anzupassen):
In LibreOffice klappt das nicht, die Linie sieht man nicht und die Aufgabe hat dann natürlich auch eine andere Lösung. Der "Bruchstrich" liegt hinter dem Textfeld mit der Aufgabe:
... obwohl er im Dialogeditor vorne liegt (Ich habe hier das Textfeld zur Anschaulichkeit etwas verkleinert, damit man sieht, dass der Strich hinter dem Textfeld liegt). Ich habe den Strich auch schon entfernt und neu eingefügt, in der Hoffnung, dass er dann oben liegt. Außerdem ist mir aufgefallen, dass der Strich auch nicht dicker wird, auch wenn ich die Textgröße ändere.
Ich habe keine Idee, wie ich das Problem lösen kann.
Bei der Gelegenheit: Wo liegt der Unterschied bei einer Linie zwischen aktiviert und nicht aktiviert, außer dass die Linie heller und dunkler wird?
Und noch was: Zur Not muss ich in LibreOffice eine Klammer um die Summe machen. Dazu müsste ich aber auslesen können unter welchem Programm mein Rechentrainer genutzt wird. Ich weiß nicht mehr, ob und wie das geht. (Das mit der Klammer hilft mir allerdings nichts bei meinen Aufgaben zu den Potenzgesetzen mit Brüchen, da brauche ich unbedingt diesen Bruchstrich.)
Pit
Hallo Leute,
ich komme mal wieder nicht weiter. Ich benötige in meinem Dialog mit Matheaufgaben ein Wurzelzeichen über einer Summe. Zusätzlich zum Wurzelzeichen plaziere ich dafür eine horizontale Linie über der Summe. Das geht in OpenOffice wunderbar (nun ja, es ist etwas Arbeit, es an die verschiedenen Längen der Summe anzupassen):
In LibreOffice klappt das nicht, die Linie sieht man nicht und die Aufgabe hat dann natürlich auch eine andere Lösung. Der "Bruchstrich" liegt hinter dem Textfeld mit der Aufgabe:
... obwohl er im Dialogeditor vorne liegt (Ich habe hier das Textfeld zur Anschaulichkeit etwas verkleinert, damit man sieht, dass der Strich hinter dem Textfeld liegt). Ich habe den Strich auch schon entfernt und neu eingefügt, in der Hoffnung, dass er dann oben liegt. Außerdem ist mir aufgefallen, dass der Strich auch nicht dicker wird, auch wenn ich die Textgröße ändere.
Ich habe keine Idee, wie ich das Problem lösen kann.
Bei der Gelegenheit: Wo liegt der Unterschied bei einer Linie zwischen aktiviert und nicht aktiviert, außer dass die Linie heller und dunkler wird?
Und noch was: Zur Not muss ich in LibreOffice eine Klammer um die Summe machen. Dazu müsste ich aber auslesen können unter welchem Programm mein Rechentrainer genutzt wird. Ich weiß nicht mehr, ob und wie das geht. (Das mit der Klammer hilft mir allerdings nichts bei meinen Aufgaben zu den Potenzgesetzen mit Brüchen, da brauche ich unbedingt diesen Bruchstrich.)
Pit
Zuletzt geändert von erikafuchs am Mo 6. Dez 2021, 17:32, insgesamt 1-mal geändert.
Re: Reihenfolge der Kontrollelemente
Hallo Pit,
hier ein Makro aus dem englichen Forum, welches ich angepasst habe.
Es fügt ein Math-Shape (Formel) in ein Tabellenblatt ein:
Das Shape kannst Du dann in ein Bild-Steuerelement einfügen.
Wie das ginge, habe ich noch nicht heraus gefunden.
hier ein Makro aus dem englichen Forum, welches ich angepasst habe.
Es fügt ein Math-Shape (Formel) in ein Tabellenblatt ein:
Code: Alles auswählen
REM ***** BASIC *****
REM QUELLE: https://forum.openoffice.org/en/forum/viewtopic.php?f=45&t=45282#
sub InsertSquareRoot
Dim oDoc As Object
Dim oSheet As Object
Dim oShape As Object
oDoc = ThisComponent
oSheet = oDoc.Sheets(0)
oShape = oDoc.createInstance("com.sun.star.drawing.OLE2Shape")
oShape.CLSID = "078B7ABA-54FC-457F-8551-6147e776a997"
oSheet.Drawpage.Add(oShape)
' oShape.Model.Formula = "size 20 e^{i%pi} + 1 = 0"
oShape.Model.Formula = "sqrt(9+64)"
oShape.setSize(oShape.OriginalSize)
end sub
Wie das ginge, habe ich noch nicht heraus gefunden.
Gruß
Craig
Nie die Sicherungskopie vergessen!
════════════════════════════════════════════════
WIN 10 Pro 64-Bit • LO 7.4.5.1 (x64) • AOO 4.1.8
Craig
Nie die Sicherungskopie vergessen!
════════════════════════════════════════════════
WIN 10 Pro 64-Bit • LO 7.4.5.1 (x64) • AOO 4.1.8
-
- Beiträge: 30
- Registriert: Mi 20. Mär 2013, 18:07
Re: Reihenfolge der Kontrollelemente
Hallo Craig,
ich habe das jetzt noch nicht ausprobiert. Das sieht aber so aus, als würde dieser Code ein Object in der drawpage einfügen und nicht in den Dialog. Das ist, fürchte ich, nicht hilfreich, da es nicht wirklich klar positioniert werden kann. Die Objekte im Dialog werden relativ zum linken oberen Ende des Objektes eingefügt und die auf der Drawpage, nach meiner Einschätzung, relativ zum Tabellenblatt, ich fürchte, das hilft nicht, wie soll ich das positionieren? Den Dialog kann ich ja verschieben und der "bruchstrich" bleibt dann stehen?. .... In OpenOffice klappt das ja nun mal einwandfrei, da muss es doch eine andere Lösung geben!?
ich habe das jetzt noch nicht ausprobiert. Das sieht aber so aus, als würde dieser Code ein Object in der drawpage einfügen und nicht in den Dialog. Das ist, fürchte ich, nicht hilfreich, da es nicht wirklich klar positioniert werden kann. Die Objekte im Dialog werden relativ zum linken oberen Ende des Objektes eingefügt und die auf der Drawpage, nach meiner Einschätzung, relativ zum Tabellenblatt, ich fürchte, das hilft nicht, wie soll ich das positionieren? Den Dialog kann ich ja verschieben und der "bruchstrich" bleibt dann stehen?. .... In OpenOffice klappt das ja nun mal einwandfrei, da muss es doch eine andere Lösung geben!?
-
- Beiträge: 30
- Registriert: Mi 20. Mär 2013, 18:07
Re: Reihenfolge der Kontrollelemente
Ich habe mal eine Beispieldatei gebastelt, vielleicht hilft es. In AOO sieht man den Strich unter LO nicht.
- Dateianhänge
-
- Bruchstrich.ods
- (11.53 KiB) 93-mal heruntergeladen
Re: Reihenfolge der Kontrollelemente
Hallo Pit,
ich denke ich habe eine Lösung, die Z-Order scheint an der Aktivierungsreihenfolge zu hängen.
Habe dir ein Beispiel gebaut.
Gruß R
Edit: dein Datei geht auch
ich denke ich habe eine Lösung, die Z-Order scheint an der Aktivierungsreihenfolge zu hängen.
Habe dir ein Beispiel gebaut.
Gruß R
Edit: dein Datei geht auch
- Dateianhänge
-
- Bruchstrich.ods
- (12.26 KiB) 92-mal heruntergeladen
-
- Erika.odt
- (12.9 KiB) 88-mal heruntergeladen
Windows 10: AOO, LO Linux Mint: AOO, LO
-
- Beiträge: 30
- Registriert: Mi 20. Mär 2013, 18:07
Re: Reihenfolge der Kontrollelemente
Hallo Rick,
vielen Dank, ich hatte schon die Hoffnung aufgegeben!
Nur .... hast du das auch mal mit OO ausprobiert? Es ist nicht zu glauben, da ist der Bruchstrich jetzt weg. ... Oder spinne ich?
Das heißt, ich muss jetzt, je nach Version, diese Aktivierungsreihenfolge per Makro ändern - das ist doch zum Mäusemelken!
vielen Dank, ich hatte schon die Hoffnung aufgegeben!
Nur .... hast du das auch mal mit OO ausprobiert? Es ist nicht zu glauben, da ist der Bruchstrich jetzt weg. ... Oder spinne ich?
Das heißt, ich muss jetzt, je nach Version, diese Aktivierungsreihenfolge per Makro ändern - das ist doch zum Mäusemelken!
Re: Reihenfolge der Kontrollelemente
Hallo Pit,
habe es mir nochmal angesehen, OO und LO verhalten sich bei mir gleich, siehe nochmal geändertes Beispiel anbei.
Ich denke der TabIndex muss nach dem Füllen des Textfeldes gesetzt werden, sonst ist der Strich wieder weg.
Gruß R
habe es mir nochmal angesehen, OO und LO verhalten sich bei mir gleich, siehe nochmal geändertes Beispiel anbei.
Ich denke der TabIndex muss nach dem Füllen des Textfeldes gesetzt werden, sonst ist der Strich wieder weg.
Gruß R
- Dateianhänge
-
- Erika.odt
- (12.96 KiB) 88-mal heruntergeladen
Windows 10: AOO, LO Linux Mint: AOO, LO
-
- Beiträge: 30
- Registriert: Mi 20. Mär 2013, 18:07
Re: Reihenfolge der Kontrollelemente
Hallo Rick,
ja, bei deinem blinkenden Beispiel schon, aber ohne Blinken geht das bei mir nicht. Vielleicht stelle ich mich ja auch wieder blöd an.
Folgender Code funktioniert jetzt bei beiden Versionen - ich muss aber die Aktivierungsreihenfolge nur in LO wechseln:
Das heißt, ich muss die 4 entsprechenden Zeilen in OO "ausschalten". Oder siehst du das anders?
... und dann muss ich das wahrscheinlich auch noch jeweils für Linux und beim Mac ausprobieren.
Ach ja: Mir ist nichts Besseres eingefallen, als zwischen LO und OO zu unterscheiden, indem ich die Versionsnummer auslese - das ist ja nicht so ganz elegant. Dein Code sieht ja sehr elaboriert aus, den verstehe ich allerdings mal wieder nicht. Gibt es dafür eine Gebrauchsanweisung:
ja, bei deinem blinkenden Beispiel schon, aber ohne Blinken geht das bei mir nicht. Vielleicht stelle ich mich ja auch wieder blöd an.
Folgender Code funktioniert jetzt bei beiden Versionen - ich muss aber die Aktivierungsreihenfolge nur in LO wechseln:
Code: Alles auswählen
Sub Main
DialogLibraries.loadLibrary("Standard")
oDialog = createUnoDialog(DialogLibraries.Standard.Dialog1)
oFixedLine1 = oDialog.getControl("FixedLine1")
oFixedLine1Model = oFixedLine1.Model
oTextfield1 = oDialog.getControl("TextField1")
oTextfield1.text = space(40) & chr(8730) & "4 + 5"
oFixedLine1Model.PositionX=72
oFixedLine1Model.PositionY=65
oFixedLine1Model.width=14
if getSolarVersion>500 then
tTab = oTextField1.Model.TabIndex
lTab = oFixedLine1.Model.TabIndex
oTextField1.Model.TabIndex = lTab
oFixedLine1.Model.TabIndex = tTab
end if
oDialog.execute()
end sub
... und dann muss ich das wahrscheinlich auch noch jeweils für Linux und beim Mac ausprobieren.
Ach ja: Mir ist nichts Besseres eingefallen, als zwischen LO und OO zu unterscheiden, indem ich die Versionsnummer auslese - das ist ja nicht so ganz elegant. Dein Code sieht ja sehr elaboriert aus, den verstehe ich allerdings mal wieder nicht. Gibt es dafür eine Gebrauchsanweisung:
Code: Alles auswählen
function getVersion AS string
Dim nNumber as integer
Dim aSettings, aConfigProvider
Dim aParams2(0) As new com.sun.star.beans.PropertyValue
Dim sProvider$, sAccess$
sProvider = "com.sun.star.configuration.ConfigurationProvider"
sAccess = "com.sun.star.configuration.ConfigurationAccess"
aConfigProvider = createUnoService(sProvider)
aParams2(0).Name = "nodepath"
aParams2(0).Value = "/org.openoffice.Setup/Product"
aSettings = aConfigProvider.createInstanceWithArguments(sAccess, aParams2())
getVersion = aSettings.ooName & " " & aSettings.ooSetupVersionAboutBox
end function
- Dateianhänge
-
- Bruchstrich2.ods
- (12.5 KiB) 94-mal heruntergeladen
Re: Reihenfolge der Kontrollelemente
Habe ich nicht parat, bin nicht am Rechner. Untersuche asettings mit xray. Ich schätze das mitgelieferte Makro getsolarversion hat Ähnlichkeit mit meinem getVersion.
EDIT: muss mich korrigieren, getsolarversion scheint kein Starbasic Makro zu sein, zumindest kann ich keinen Code dazu finden.
Zur Erklärung, soweit ich es verstanden habe, miterzeugt man einen Service, mit dem man auf verschiedenste Dinge zugreitfen kann, z.B. auf den Nodepath
Ergebnis der XRay Analyse von aSettings:
wenn man /Product weglässt, kommt man an andere Informationen zum Setup von OpenOffice, da muss man sich durchwühlen.
Gruß R
EDIT: muss mich korrigieren, getsolarversion scheint kein Starbasic Makro zu sein, zumindest kann ich keinen Code dazu finden.
Zur Erklärung, soweit ich es verstanden habe, mit
Code: Alles auswählen
sProvider = "com.sun.star.configuration.ConfigurationProvider"
sAccess = "com.sun.star.configuration.ConfigurationAccess"
aConfigProvider = createUnoService(sProvider)
Code: Alles auswählen
"/org.openoffice.Setup/Product"
Windows 10: AOO, LO Linux Mint: AOO, LO
-
- Beiträge: 30
- Registriert: Mi 20. Mär 2013, 18:07
Re: Reihenfolge der Kontrollelemente
Ich gebe es jetzt auf! Ich habe das mit dem IndexTab in meinem Rechentrainer eingebaut. Egal was ich mache, es klappt nicht ... zumindest im ersten Durchgang.
Wenn ich den Aufgabentyp mehrmals aufrufe, ist beim ersten Durchgang der Strich nicht da: im zweiten Durchgang (und den weiteren) ist er da: (Ich muss nicht erwähnen, das das in OO nicht passiert.)
Ebenso bei meinen Aufgaben zu den Potenzgesetzen. Erster Durchlauf (Der Zähler fehlt, wie man an der Lösung erkennen kann): im zweiten Durchlauf ist der Zähler da, der Bruchstrich ist wahrscheinlich verdeckt: Ich werde in LO jetzt halt bei diesen Wurzelaufgaben eine Klammer einfügen und die entsprechenden Aufgaben bei den Potengesetzen ganz weglassen. Außerdem werde ich meine Nutzer informieren, dass sie besser mit OpenOffice arbeiten.
Wenn ich den Aufgabentyp mehrmals aufrufe, ist beim ersten Durchgang der Strich nicht da: im zweiten Durchgang (und den weiteren) ist er da: (Ich muss nicht erwähnen, das das in OO nicht passiert.)
Ebenso bei meinen Aufgaben zu den Potenzgesetzen. Erster Durchlauf (Der Zähler fehlt, wie man an der Lösung erkennen kann): im zweiten Durchlauf ist der Zähler da, der Bruchstrich ist wahrscheinlich verdeckt: Ich werde in LO jetzt halt bei diesen Wurzelaufgaben eine Klammer einfügen und die entsprechenden Aufgaben bei den Potengesetzen ganz weglassen. Außerdem werde ich meine Nutzer informieren, dass sie besser mit OpenOffice arbeiten.
An alle, die das LibreOffice-Forum nutzen:
Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.
❤️ Vielen lieben Dank für Ihre Unterstützung ❤️