Hallo Gerhard,
Vielen Dank für Deine schnelle Antwort. Ich habe dieses Beispiel nur
gebracht, um einen Rat zu bekommen, wie man einen Maus-Event erzeugen
kann. Es klingt vielleicht ein bischen albern, aber ich habe einen
Makrosatz geschrieben, mit dem ich Sudokurätsel ohne Computerhilfe lösen
kann. Dabei merke ich mir die Ziffern und ihre Position in einem Stack,
so daß ich im Fehlerfall die Züge rückgängig machen kann, um eine neue
Variante zu probieren. Das funktioniert schon alles einwandfrei. Meine
Lösung ist: Ich habe 10 Schaltflächen für die Ziffern 0 bis 9 mit denen
ich jeweils die Ziffer wählen kann. Bei dieser Ziffernwahl wird ein
"selectionChanged-Event scharf gemacht, dann klicke ich das Feld an,
imdas die Ziffer eingetragen werden soll. Das funktioniert einwandfrei.
Aber wie wir Programmierer nun einmal sind, wollen wir noch mehr, z.B:
Wenn ich mehrmals die gleiche Ziffer eintragen will, ohne jedesmmal die
Ziffer neu wählen zu müssen. Damit dies zusammen mit dem Stack
funktionieren soll, muß ich einen Maus-Event verwenden, Mouse-up oder
Mouse-down, weil sonst für einen Klick bis zu 8 Einträge in den Stack
erfolgen. Ich bin übrigens ein alter Programmierhase, davon 40 Jahre im
Beruf und mittlererweile 89 Jahre alt. Drum muß ich mich entschuldigen,
daß ich mit diesem "Problem" Eure Zeit verplempere.
Herzliche Grüße
Günter
Am 23.09.2016 um 17:10 schrieb Gerhard Weydt:
Hallo Günter,
normalerweise kann man Makros den beiden Mausereignissen bei dem
betroffenen Control zuweisen, bei Dialogen in der Basic-IDE, bei
Formularen, Writer, Calc usw. im Formularentwurf bzw. für das Dokument
selbst über Extras - Anpassen, jeweils im Reiter "Ereignisse". In
seltenen Fällen muss man selbst einen Maus-Listener anlegen.
Ich habe aber den Eindruck, dass du von diesen Dingen noch recht wenig
weißt, und würde dir deshalb empfehlen, erst einmal ein bisschen was
über diese Sachen nachzulesen, damit du besser verstehst, was da
abläuft, bevor du selber probierst. Da gibt es z.B. Bücher.
Im Beispiel wird übrigens das Makro solange wiederholt, bis die
Maustaste losgelassen wird; das ist ein Verhalten, das nur in seltenen
Fällen sinnvoll ist. Meist, nämlich wenn die Maustaste einen einzigen
Durchlauf des Makros auslösen soll, reicht es, das Makro entweder dem
einen oder anderen Ereignis zuzuweisen; ich bevorzuge das Loslassen
der Maus.
Gerhard
Am 23.09.2016 um 11:09 schrieb Günter Fritze:
Hallo zusammen,
Ich habe im Internet folgendes Programm erspäht
|Dim halt As Boolean
Sub Mouse_left_down
halt = 0
Do
REM Mein Makro ausführen
Loop while halt = True
End Sub
Sub Anhalten()
halt = 1
End Sub|
|mit dem c Vorschlag das 1.Makro dem Maus-left-down-Ereignis und das
2. Makro dem Mouse-up-Ereignis zuweisen.|
|Damit wäre ich ja zufrieden, aber, wie weist man ein Mausereignis zu?|
|System Linuxmin 18|
|libreoffice 5.3.0.2|
|MfG|
|Günter
|
--
Liste abmelden mit E-Mail an: users+unsubscribe@de.libreoffice.org
Probleme? http://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: http://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: http://listarchives.libreoffice.org/de/users/
Alle E-Mails an diese Liste werden unlöschbar öffentlich archiviert
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.