'drawpage' Eigenschaft nicht gefunden

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

Moderator: Moderatoren

kuraschima
Beiträge: 9
Registriert: Do, 04.10.2012 18:31

'drawpage' Eigenschaft nicht gefunden

Beitrag von kuraschima »

Hallo,
ich habe folgendes Problem:

Ich möchte mithilfe eines Makros die Eigenschaften der Kontrollfelder eines Formulars verändern.
Mir wird immer wieder der Fehler ausgegeben, dass die Methode oder Eigenschaft 'drawpage' nicht gefunden wurde.

Wäre super wenn ihr mir helfen könntet :)

Code: Alles auswählen

oForm = thisComponent.drawpage.forms.getByName("MainForm")
 oForm .getByName("Anwesenheitcmd").visible = true
Danke im Voraus :)
F3K Total
********
Beiträge: 3724
Registriert: Mo, 28.02.2011 17:49

Re: 'drawgpage' Eigenschaft nicht gefunden

Beitrag von F3K Total »

Hi,
das liegt vermutlich daran, dass du das Makro direkt aus der IDE (Basic - Entwicklungsumgebung) startest. Die IDE wird als ThisComponent erkannt hat aber keine Drawpage. Starte das Makro entweder über Extras/Makros ... oder über ein Kontrollelement direkt auf dem Formular, z.B. über eine Schaltfläche (Button).

Crossposten sollte man nicht ohne Link auf den anderen Post.
Gruß R
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: 'drawgpage' Eigenschaft nicht gefunden

Beitrag von komma4 »

kuraschima hat geschrieben:Ich möchte mithilfe eines Makros
Deshalb in das zuständige Unterforum verschoben - Tippfehler im Betreff korrigiert
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)
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: 'drawpage' Eigenschaft nicht gefunden

Beitrag von balu »

Hallo,

auch wenn ich Crossposter nicht so sehr mag, möcht ich dennoch etwas los werden.
kuraschima hat geschrieben: Mir wird immer wieder der Fehler ausgegeben, dass die Methode oder Eigenschaft 'drawpage' nicht gefunden wurde.
F3K Total hat geschrieben: das liegt vermutlich daran, dass du das Makro direkt aus der IDE (Basic - Entwicklungsumgebung) startest.
Das hat wohl weniger was mit der IDE zu tun, als vielmehr mit dem Programmodul.


@kuraschima
Es ist absolut wichtig zu Wissen mit welchem Programmodul Du arbeitest: Writer, Calc...?



Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.

wehr rächtschraipfähler findet khan si behalden :D
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: 'drawpage' Eigenschaft nicht gefunden

Beitrag von Karolus »

@F3K
Das wäre mir neu , das 'ThisComponent' die IDE mapt falls das Makro aus dieser gestartet wird - verwechselst du das gerade mit 'Stardesktop.CurrentComponent' ?

Karolus
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
kuraschima
Beiträge: 9
Registriert: Do, 04.10.2012 18:31

Re: 'drawpage' Eigenschaft nicht gefunden

Beitrag von kuraschima »

Ich arbeite mit dem Writer.
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: 'drawpage' Eigenschaft nicht gefunden

Beitrag von Karolus »

Hallo
Ein Writer Dokument hat ~.DrawPage.Forms
dann gibts bei dir keine mit Namen "MainForm"

Ps. Es gibt Mri das kann man dazu benutzen solche trivialen Fehler selbst zu finden statt Crossposting in mehreren Foren zu veranstalten.

Karolus
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Benutzeravatar
komma4
********
Beiträge: 5332
Registriert: Mi, 03.05.2006 23:29
Wohnort: Chon Buri Thailand Asia
Kontaktdaten:

Re: 'drawpage' Eigenschaft nicht gefunden

Beitrag von komma4 »

Die erste Zeile der Anweisungen ist (bei WRITER) völlig legitim und korrekt.
Du hast einen anderen Fehler in Deinem Projekt.

Lade ein Beispieldokument hier hoch und zeige Deinen kompletten Code.
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)
kuraschima
Beiträge: 9
Registriert: Do, 04.10.2012 18:31

Re: 'drawpage' Eigenschaft nicht gefunden

Beitrag von kuraschima »

Es funktioniert wenn ich das makro in der Datei speichere.
Da die Datei aber von mehreren Personen von verschiedenen Pc's aus benutzt wird sollte es in der IDE stehen. sonst lässt sich die Geschichte wegen der Sicherheit nicht ausführen.
Die Datei wird später auf einen Server gelegt, von dem aus diverse Pc's drauf zugreifen.

Wenn ich das Makro nun aus der IDE starte bekomme ich den Fehler, die Eigenschaft 'visible' sei unbekannt...

Wie muss der Code aussehen, sodass er funktioniert wenn man ihn aus der IDE startet?
Dateianhänge
Formularfeld, visible.odt
Problemdatei
(12.06 KiB) 198-mal heruntergeladen
F3K Total
********
Beiträge: 3724
Registriert: Mo, 28.02.2011 17:49

Re: 'drawpage' Eigenschaft nicht gefunden

Beitrag von F3K Total »

Karolus hat geschrieben:Das wäre mir neu , das 'ThisComponent' die IDE mapt falls das Makro aus dieser gestartet wird
OK, da hast Du natürlich Recht.
Der Beitrag stand vormals im Forum BASE/SQL und wenn man ein BASE Dokument mit Formularen offen hat, beschreibt Thiscomponent eben das Datenbankdokument. (com.sun.star.comp.dba.ODatabaseDocument)
Das Datenbankdokument (und nicht die IDE) hat keine Drawpage, also kommt, wenn ich ein Makro mit dem Zugriff auf ein Base Formular ala

Code: Alles auswählen

oForm = ThisComponent.drawpage.Forms.getbyname("Formularname")
habe, und es über diesen
ma.png
ma.png (1.92 KiB) 4397 mal betrachtet
Button in der IDE auswähle und dann starte, genau diese Fehlermeldung:
ma2.png
ma2.png (14.88 KiB) 4397 mal betrachtet
obwohl das Makro, aus dem Formular gestartet, völlig in Ordnung wäre.
balu hat geschrieben:Das hat wohl weniger was mit der IDE zu tun, als vielmehr mit dem Programmodul.
OK, auch Du hast also Recht.
Gruß R
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: 'drawpage' Eigenschaft nicht gefunden

Beitrag von Karolus »

Hallo

Code: Alles auswählen

Sub toggle_form
oForm = thisComponent.drawpage.forms.getByName("StundenplanForm")
stundenplan = oForm.getByName("Beschriftungsfeld 1")
stundenplan.EnableVisible = not stundenplan.EnableVisible
End Sub
Kurashima, Lese und befolge doch einfach mal das PS aus meiner letzten Antwort
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
kuraschima
Beiträge: 9
Registriert: Do, 04.10.2012 18:31

Re: 'drawpage' Eigenschaft nicht gefunden

Beitrag von kuraschima »

Super, genau das ist es. Vielen dank euch allen

Ich habe mir Mri angesehen, die Seite ist wirklich hilfreich bei solche Problemen danke.
In Zukunft werde ich mich zuerst dort schlau machen.


Gruß
Antworten