Seite 1 von 1
FAQ - Programmierung (StarBasic und Allgmeines)
Verfasst: Mi, 15.08.2012 10:17
von F3K Total
1. Fenster per Makro maximieren oder minimieren
Folgendes Makro z.B. an das Ereignis "Ansicht wurde erzeugt" des Dokumentes (Extras/Anpassen/Ereignisse) binden.
Bei Base-Formularen vorher in den Entwurfsmodus wechseln.
Code: Alles auswählen
sub S_MaximizeFrame
oframe = Thiscomponent.currentcontroller.frame
owindow = oframe.getContainerWindow()
If Not IsNull(oWindow) Then
oWindow.IsMaximized = True
'oWindow.IsMinimized = True
End If
end sub
Re: FAQ - Programmierung
Verfasst: So, 02.09.2012 10:59
von Stephan
Re: FAQ - Programmierung (StarBasic und Allgmeines)
Verfasst: Di, 10.02.2015 11:10
von Stephan
3. [Calc] alle Zellen des aktiven Tabellenblattes markieren welche eine bedingte Formatierung enthalten
Code: Alles auswählen
Sub Main
akt_blatt = ThisComponent.CurrentController.ActiveSheet
cur = akt_blatt.CreateCursor
cur.GotoEndOfUsedArea(True)
letzte_Zeile = Cur.getRangeAddress.EndRow
letzte_Spalte = Cur.getRangeAddress.EndColumn
bereiche = ThisComponent.CreateInstance("com.sun.star.sheet.SheetCellRanges")
For i = 0 To letzte_Zeile
For j = 0 To letzte_Spalte
If akt_blatt.getCellByPosition(j, i).ConditionalFormatLocal.Count <> 0 Then
bereiche.addRangeAddress(akt_blatt.getCellByPosition(j, i).getRangeAddress(), False)
End If
Next j
Next i
ctr = ThisComponent.CurrentController
ctr.Select(bereiche)
End Sub
Re: FAQ - Programmierung (StarBasic und Allgmeines)
Verfasst: Sa, 30.04.2016 10:12
von Stephan
4. einen Basic-Dialog abhängig vom bestehenden Dialog positionieren
Beispieldatei:
siehe auch:
viewtopic.php?f=18&p=263207#p263207
Re: FAQ - Programmierung (StarBasic und Allgmeines)
Verfasst: Mi, 01.06.2016 10:40
von Stephan
5. Zwischen OpenOffice und LibreOffice per Makro unterscheiden
Beispieldatei:
siehe auch:
viewtopic.php?f=18&t=67144&p=263618#p263618
viewtopic.php?t=62130
Re: FAQ - Programmierung (StarBasic und Allgmeines)
Verfasst: So, 07.05.2017 07:05
von Stephan
6. Parameter/Umgebungsvariablen für Environ-Funktion
Environ() gibt den Wert einer Umgebungsvariablen als Zeichenkette zurück. Die verfügbaren Umgebungsvariablen hängen vom eingesetzten Betriebssystem ab.
Beispiel:
Für z.B. Windows 7 sind folgende Umgebungsvariablen für Environ() verfügbar:
ALLUSERSPROFILE
APPDATA
CommonProgramFiles
COMPUTERNAME
ComSpec
FP_NO_HOST_CHECK
HOMEDRIVE
HOMEPATH
LOCALAPPDATA
LOGONSERVER
MOZ_PLUGIN_PATH
MpConfig_ProductAppDataPath
MpConfig_ProductCodeName
MpConfig_ProductPath
MpConfig_ProductUserAppDataPath
MpConfig_ReportingGUID
NUMBER_OF_PROCESSORS
OS
Path
PATHEXT
PROCESSOR_ARCHITECTURE
PROCESSOR_IDENTIFIER
PROCESSOR_LEVEL
PROCESSOR_REVISION
ProgramData
ProgramFiles
PSModulePath
PUBLIC
SESSIONNAME
SystemDrive
SystemRoot
TEMP
TMP
USERDOMAIN
USERNAME
USERPROFILE
WecVersionForRosebud.6298
windir
windows_tracing_flags
windows_tracing_logfile
siehe auch:
https://msdn.microsoft.com/de-de/librar ... 64486.aspx
Re: FAQ - Programmierung (StarBasic und Allgmeines)
Verfasst: Do, 16.07.2020 10:29
von Stephan
Re: FAQ - Programmierung (StarBasic und Allgmeines)
Verfasst: Fr, 01.10.2021 08:45
von Stephan
7. Datums-Steuerelement leeren (getestet LO 7.1.4)
Nachdem ich mich aktuell mit dem Datums-Steuerelement rumgeärgert habe, nachfolgender Tipp zum Leeren Desselben.
Mir hilft das in
http://de.openoffice.info/viewtopic.php?f=8&t=49389 Geschriebene leider nicht, Erfolg hatte ich mittels:
Code: Alles auswählen
'...
oDialog.getControl("meinControl").setEmpty()
oDialog.getControl("meinControl").Text = ""
Folgender, merkwürdiger, Weg funktioniert auch:
Code: Alles auswählen
oDialog.getControl("meinControl").Text = "01.01.1900"
Dim x3 As New com.sun.star.util.Date
oDialog.getControl("meinControl").Date = x3
oDialog.getControl("meinControl").Text = ""
"merkwürdig" weil die vorstehende erste Code-Zeile ausgeführt werden MUSS und dabei der zugewiesene String (irgend)ein real existierendes Datum sein muss, mit einem Leerstring funktioniert es nicht.
Sowohl:
Code: Alles auswählen
oDialog.getControl("meinControl").Text = ""
Dim x3 As New com.sun.star.util.Date
oDialog.getControl("meinControl").Date = x3
oDialog.getControl("meinControl").Text = ""
als auch:
Code: Alles auswählen
Dim x3 As New com.sun.star.util.Date
oDialog.getControl("meinControl").Date = x3
oDialog.getControl("meinControl").Text = ""
führen zur sichtbaren Anzeige "01.01.1900" im Datumsfeld.
Hinweis: .Date als Struct "com.sun.star.util.Date" gilt nur für neuere LO-Versionen (
https://api.libreoffice.org/docs/idl/re ... 3d82dd3350), für ältere LO- und alle OO-Versionen ist .Date weiterhin ein Long-Wert (
http://www.openoffice.org/api/docs/comm ... .html#Date).