🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Draw/Impress - MouseEvent (Position)

Alles zur Programmierung im LibreOffice.
Antworten
Petyr
Beiträge: 17
Registriert: Fr 3. Aug 2012, 08:32

Draw/Impress - MouseEvent (Position)

Beitrag von Petyr » Fr 3. Mai 2013, 09:10

Einen guten Morgen euch allen!

Ich versuche gerade einen Teil unserer Dokumente von CorelDraw auf Draw/Impress umzustellen. Ein Schirtt darin besteht aus der Nummerierung von Elementen. In CorelDraw haben wir mittels VBA eine extra Funktion dafür erstellt. Ich starte das VBA Makro gebe eine Startnummer ein und klicke dann in meinem Zeichnungsbereich herum. An jeder Stelle im Dokument, die ich anklicke, wird ein Kreis mit einer Zahl erstellt. Die Nummerierung wird dabei automatisch hochgezählt.

Jetzt möchte ich diese Funktion auch in Draw nachbilden. Leider finde ich keinerlei Hinweise darauf, ob es in LO-Basic überhaupt so etwas wie einen Mouse-Event/Mouse-Click-Event im Zeichnungsbereich gibt.

Hat jemand eine Idee, wo ich zu suchen anfangen muss, oder wo ich Infos zum Eventsystem finde? Die Steuerelemente-Events, sowie die Events des Dokuments (Open, Save, ...) helfen mir hier leider nicht.

Danke!
viele Grüße,

Petyr

pmoegenb

Re: Draw/Impress - MouseEvent (Position)

Beitrag von pmoegenb » Fr 3. Mai 2013, 11:04

Evtl. wirst Du hier fündig.

Petyr
Beiträge: 17
Registriert: Fr 3. Aug 2012, 08:32

Re: Draw/Impress - MouseEvent (Position)

Beitrag von Petyr » Fr 3. Mai 2013, 15:09

Vielen lieben Dank für die prompte Rückmeldung. Ich habe einen schnellen Blick drauf geworfen - sieht gut aus!
*thumbup*
viele Grüße,

Petyr

Petyr
Beiträge: 17
Registriert: Fr 3. Aug 2012, 08:32

Re: Draw/Impress - MouseEvent (Position)

Beitrag von Petyr » Sa 4. Mai 2013, 11:19

Hi,
Ich konnte gestern einen Blick auf den Link werfen.
Entweder hat sich das API geändert, oder aber diese Events gelten nur wieder innerhalb von Formularfeldern.
Wenn ich z.B. das Demosnippet übernehme und aus dem Editor starte, bekomme ich sofort einen Fehler mit Bezug auf 'optionale Parameter' bei der ersten IF-Abfrage.
Wenn ich den Makro aus dem Dokument aufrufe, friert mir LO für ein paar Sekunden ein, aber es passiert nix. Ich werde jetzt mal ein paar Breakpoints und Überwachungen hinzufügen. Vielleicht werde ich dann etwas schlauer....
viele Grüße,

Petyr

Axel Richter
Beiträge: 4
Registriert: Do 9. Mai 2013, 08:44

Re: Draw/Impress - MouseEvent (Position)

Beitrag von Axel Richter » Do 9. Mai 2013, 08:51

Hallo,

die Mausposition per Handler-Event in einem Draw-Controller zu ermitteln, ist ein lösbares Problem, siehe anhängende Datei.

Das eigentliche Problem ist, dass diese Position in Bildpunkten angegeben ist. Man muss diese also irgendwie auf 1/100 mm der unter dem Controller liegenden DrawPage projizieren. Dafür habe ich bisher keine zufriedenstellende Lösung gefunden. Eventuell kennt ja jemand eine?

viele Grüße

Axel
Dateianhänge
DrawMouseClickHandler.odg
(9.81 KiB) 372-mal heruntergeladen

Axel Richter
Beiträge: 4
Registriert: Do 9. Mai 2013, 08:44

Re: Draw/Impress - MouseEvent (Position)

Beitrag von Axel Richter » Fr 10. Mai 2013, 09:41

Hallo,

ich habe nun doch eine Lösung gefunden, die Scrollzustand und Zoom berücksichtigt. Allerdings zunächst noch wenig getestet.

Siehe anhängende Datei - dort benutzerdefiniertes Menü Nummerierung.

viele Grüße

Axel
Dateianhänge
DrawMouseClickHandler.odg
(12.26 KiB) 390-mal heruntergeladen

Petyr
Beiträge: 17
Registriert: Fr 3. Aug 2012, 08:32

Re: Draw/Impress - MouseEvent (Position)

Beitrag von Petyr » Di 14. Mai 2013, 08:53

:shock:
Wow. Danke. Das macht GENAU was ich vorhatte.
Vielen, vielen lieben Dank - ich hätte mir das wohl selbst nicht in der Form erarbeiten können. Jetzt stellt sich mir die Frage, wie du das Menü da reinbekommen hast!?
viele Grüße,

Petyr

Axel Richter
Beiträge: 4
Registriert: Do 9. Mai 2013, 08:44

Re: Draw/Impress - MouseEvent (Position)

Beitrag von Axel Richter » Mi 15. Mai 2013, 06:52

Hallo Petyr,
Petyr hat geschrieben:Jetzt stellt sich mir die Frage, wie du das Menü da reinbekommen hast!?
https://help.libreoffice.org/Common/Menu/de

viele Grüße

Axel


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.



Antworten