In OO Calc ein Modul durch ein Modul erstellen?

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

$ilent$nooc
*
Beiträge: 10
Registriert: Di, 22.08.2006 14:50

In OO Calc ein Modul durch ein Modul erstellen?

Beitrag von $ilent$nooc »

tagchen leute.. ich bins wieder :)

folgendes:

ich habe vor zu testen ob ich im Calc dynamischen code erstellen kann. bevor ich das jedoch testen kann muss ich wissen wie ich ein Modul via programmierung erstellen kann, diesem Modul code hinzufügen kann und dann auch ausführen kann.

weiß evtl. jemand wie ich das bewerkstelligen könnte?
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Beitrag von Stephan »

weiß evtl. jemand wie ich das bewerkstelligen könnte?
nach dem Was Michael sagt:
http://www.dannenhoefer.de/forum/viewth ... =2&thid=20
auf direktem Wege wahrscheinlich garnicht.
Allerdings ist das schon eine Weile her und zwar gibt es hier noch den Hinweis auf den Michael sich bezieht:
http://api.openoffice.org/docs/common/r ... le-ix.html
hier jedoch nicht mehr (was bei meiner lokalen Version dr IDL-Referenz der Fallist):
http://api.openoffice.org/docs/common/r ... ccess.html

Du solltest einfach ausprobieren ob es inzwischen geht.


Gruß
Stephan
$ilent$nooc
*
Beiträge: 10
Registriert: Di, 22.08.2006 14:50

Beitrag von $ilent$nooc »

hehe.. auf diesen urls (bis auf der ersten) war ich schon überall :lol:
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Beitrag von komma4 »

X-Ray schreibt seine Konfigurationsdaten in ein Modul....

Ob Du Code eines so erstellten Moduls nutzen kannst (Funktionen?), weiss ich nicht.
Cheers
Winfried
aktuell: LO 5.3.5.2 30m0(Build:2) SUSE rpm, unter Linux openSuSE Leap 42.3 x86_64/KDE5
DateTime2 Einfügen von Datum/Zeit/Zeitstempel (als OOo Extension)
$ilent$nooc
*
Beiträge: 10
Registriert: Di, 22.08.2006 14:50

Beitrag von $ilent$nooc »

also...

ich hab es jetzt geschafft eine library zu erstellen! aus der dokumentation konnte ich nicht herauslesen zu welchem objekt die methode 'createLibrary()' gehört!

nun wie dem auch sei, hier der code, sollte ihn jemand mal brauchen:

Code: Alles auswählen

Private Sub AddModule
	Dim Document As Object
	Dim Container As Object
	Dim strPath As String
	Dim Args()
	
		' Giving path and open document
	strPath = "file:///C:/test/AddToMe.ods"	
	Document = StarDesktop.loadComponentFromURL(strPath, "_blank", 0, Args())

Document.BasicLibraries.createLibrary("MyNewLib", "", "", "")

		' Save changes
	Document.storeAsURL(strPath, Args())
	
		' Close document
	Document.Close(true)
	
End Sub ' AddModule()

einfach nicht?

createLibrary ist also eine methode des objektes 'BasicLibraries' !
aber wo bitte steht das? Doku

das einzige problem welches ich nun noch habe, ist das erstellen eines modules in dieser lib!

zwar gibt es eine funktion die dies angeblich erledigen soll ('addModule') jedoch ist sie als 'abgelehnt' (deprecated) definiert! und selbst wenn sie funktioniert, habe ich keine ahnung zu welchem objekt diese methode nun wieder gehört..

kann mir evtl. jemand weiter helfen?
ykcim
*****
Beiträge: 324
Registriert: Di, 29.07.2003 15:22
Wohnort: Neu-Isenburg
Kontaktdaten:

Beitrag von ykcim »

Du bist an der richtige Stelle, aber mit dem falschen Befehl.
AddModule ist eine Sackgasse. Richtig ist insertbyname.

Code: Alles auswählen

Sub InsertModule
   modultext = "REM Test" 
   LibCon = ThisComponent.BasicLibraries
   Lib = LibContainer.createLibrary("NewTest")
   Lib.insertByName("Modul1", modultext)
End Sub
mfg
Michael
__
FAQ zu Starbasic -> http://www.starbasicfaq.de
$ilent$nooc
*
Beiträge: 10
Registriert: Di, 22.08.2006 14:50

Beitrag von $ilent$nooc »

@ Michael:

boah danke :D es funktioniert!
danke danke danke *g*


*edit:
eine frage hätte ich noch.. und zwar: gibt es verschiedene module? oder kann ich die eigenschaften eines modules irgendwie einstellen? beispielsweise dass CModule ein klassen modul ist und Module ein normales modul ist?
ykcim
*****
Beiträge: 324
Registriert: Di, 29.07.2003 15:22
Wohnort: Neu-Isenburg
Kontaktdaten:

Beitrag von ykcim »

Es gibt keine unterschiedliche Module.

mfg
Michael
__
FAQ zu Starbasic -> http://www.starbasicfaq.de
$ilent$nooc
*
Beiträge: 10
Registriert: Di, 22.08.2006 14:50

Beitrag von $ilent$nooc »

wie kann ich eine klasse schreiben/bauen?

bsp:

'ModuleKlasse
Class KlassenName
End Klass

'StdModule
Sub Main
Dim Instanz As New KlassenName
End Sub

geht das so irgendwie in der art?
Antworten