Date: prev next · Thread: first prev next last
2020 Archives by date, by thread · List index


Hallo Jürgen,

zum Dispatcher kann ich überhaupt nichts sagen, außer, dass er nicht immer so funktioniert, wie man sich das wünscht. Ich hatte dich so verstanden, dass du die Struktur QRCodeProperties des Shapes verändern wolltest, darauf bezog sich mein Hinweis. Ich habe das auch mal in einem Makro eines Writer-Dokuments getestet, in dem ich ein vorher per Einfügen -> Objekt -> QR-Code erzeugtes Shape verändere:

Sub Main

Dim QRShape as object, QR as object
Dim zwi_QR AS NEW com.sun.star.drawing.QRCode

QRShape = ThisComponent.CurrentSelection(0)
QR = QRShape.QRCodeProperties
zwi_QR = QR
zwi_QR.Payload = "zwei" & CHR(10) & "Zeilen"
QR = zwi_QR

End Sub

Danach steht der zweizeilige Text im Objekt QR.

Wie du damit weiterkommst, weiß ich auch noch nicht, ich müsste mich erst reinarbeiten in das Einfügen von Shapes in Writer. Dazu kommt das Problem, dass ich kein Werkzeug habe, um QR-Codes zu lesen, testen ist also schwierig.

Mehr versprach ich mir von Klaus-Michael Hesslers Beispiel-Dokument. Ich habe damit QR-Codes erzeugt für den Text "ZweiZeilen", einmal so, wie dasteht, einmal mit einem Zeilenumbruch vor "Zeilen". Da ich auf die Schnelle nicht wusste, wie ich das in der Funktion zu schreiben habe, habe ich den zweiweiligen Text in eine andere Zelle eingegeben und in der Funktion den Bezug auf diese Zelle angegeben. Der erzeugte Barcode sieht tatsächlich optisch anders aus. Die Anzeige des Titels über rechte Maustaste -> Beschreibung ist nur einzeilig, da sieht man nichts. Aber wenn ich den Titel mit Xray anschaue, dann ist er zweizeilig, das lässt hoffen. Aber du müsstest schon den QR-Code selbst anschauen. Wenn das ok ist, dann könntest du Michaels Code abwandeln, das dürfte sich wohl nur um den letzten Teil der sub QRCode ab Z. 333 handeln, und auf Writer und deine Gegebenheiten umschreiben.

Aber das muss ich dir überlassen.

Viele Grüße
Gerhard

Am 10.09.2020 um 20:15 schrieb Jürgen Klatt:
Hallo Gerhard,

dies ist mein Dispatscher-Code:

/Sub Main//
//    document   = ThisComponent.CurrentController.Frame//
//    dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")//
////
//      rem
----------------------------------------------------------------------//
//   dim args1(2) as new com.sun.star.beans.PropertyValue//
//   args1(0).Name = "Payload"//
//   args1(0).Value = "Ananas"//
//   args1(1).Name = "Border"//
//   args1(1).Value = 1//
//   args1(2).Name = "ErrorCorrection"//
//   args1(2).Value = 2//
////
//   dispatcher.executeDispatch(document, ".uno:InsertQrCode", "", 0,
args1())//
//End Sub/

Das Argument-Array wird bei der Verwendung von ".uno:InsertQrCode"
vollkommen ignoriert, läuft ins Leere.
Es wird zwar der QR-Code-Dialog aufgerufen, aber die Eigenschaften
wurden nicht übernommen.

Hinweis:
Es gibt noch diese Methode:

/   dispatcher.executeDispatch(document, ".uno:EditQrCode", "", 0, args1())/

, bin hier auch nicht weitergekommen

Viele Grüße

Jürgen

Am 10.09.2020 um 19:46 schrieb Gerhard Weydt:
Hallo Jürgen,



Am 10.09.2020 um 17:44 schrieb Jürgen Klatt:
Hallo Michael,
...
Nach meiner Code-Inspektion (mittels MRI) wird der QR-Code in einem
Shape-Objekt gezeichnet.
Für das Shape-Objekt gibt es aber keine Schnittstelle/ keinen Service
für den QR-Code-Generator.

Es gibt zwar ein Struct mit dem man die gewünschten Eigenschaften setzen
kann, aber diese
werden weder per API-Programmierung, noch per Dispatchercode angenommen.

Es hat den Anschein, als würden die Struct-Anweisungen in Leere
laufen :(
Ist dir klar, dass man in der Regel Eigenschaften in Structs nicht
direkt setzen kann, sondern einen Umweg benötigt?
Etwa so:
Dim zwi_struct AS NEW ... 'wenn du den Typ nicht gleich weißt, dann
nimm erst einmal VARIANT
zwi _struct = struct
zwi_struct.eigenschaft1 = ...
'usw.
struct = zwi_struct

Wenn du das nicht so gemacht hast, versuche es mal, vielleicht hast du
Glück.

Gruß
Gerhard




--
Liste abmelden mit E-Mail an: users+unsubscribe@de.libreoffice.org
Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.