❤ Unterstütze jetzt das LIBREOFFICE-Forum ❤

Reaktion auf Maustaste Doppelclick

Alles zur Programmierung im LibreOffice.
Antworten
Luftschraube
Beiträge: 20
Registriert: So 5. Mai 2019, 09:20

Reaktion auf Maustaste Doppelclick

Beitrag von Luftschraube » Fr 8. Nov 2019, 15:52

Guten Tag

Grüble momentan über dem Problem meine kleine Anwendung auf Maustasten-Doppelclicks reagieren zu lassen. Bei Lehnhardt und Dannenhöfer hab ich leider nichts gefunden womit ich was anfangen könnte.
Nehm aber doch an dass ich com...MouseEvent und com...MouseButton brauche um die linke Maustaste und den Doppelclick erkennen zu können !? Im Codebeispiel wird mir msgbox ZelleAdr.column korrekt angezeigt, danach nichts mehr, aber auch kein Absturz.
Ob ich es geschafft habe mein Codebeispiel in der richtigen Art und Weise in das Thema einzubinden weiss ich nicht, mal sehen ?
Vielen Dank

Code: Alles auswählen

sub MausDoppelclick
'
dim EventME as object
'
EventME = CreateObject("com.sun.star.awt.MouseEvent")  
const Maus = ("com.sun.star.awt.MouseButton")
'
ZelleAdr = thiscomponent.getCurrentSelection().getCellAddress()                  
Zelle = thiscomponent.sheets(0).getCellByPosition(ZelleAdr.column,ZelleAdr.row)  
'
if ZelleAdr.column = 2 then
msgbox ZelleAdr.column
  if Maus = 1 then
    if EventME.ClickCount = 2 then  
      msgbox "Doppelklick"
    end if
  end if
end if
end sub

F3K Total
Beiträge: 1974
Registriert: So 10. Apr 2011, 10:10

Re: Reaktion auf Maustaste Doppelclick

Beitrag von F3K Total » Fr 8. Nov 2019, 16:48

Moin,
wenn du das Makro an das Tabellenereignis "Doppelklick" hängst, reicht dieses Makro, denn in diesem Falle ist EventME genau die Zelle, die gedoppelklickt wird. :D

Code: Alles auswählen

sub MausDoppelclick(EventME)
    if EventME.CellAddress.column = 2 then
        msgbox EventME.CellAddress.column
    end if
end sub
Gruß R
Windows 10: AOO, LO Linux Mint: AOO, LO

Luftschraube
Beiträge: 20
Registriert: So 5. Mai 2019, 09:20

Re: Reaktion auf Maustaste Doppelclick

Beitrag von Luftschraube » Fr 8. Nov 2019, 19:16

Hallo, vielen Dank

Dein Beispiel war das einzige was ich in fast gleicher Formulierung gefunden, aber nicht verstanden hatte, denn die Variable, in meinem Fall EventME, musste doch erst mal irgendwo erzeugt und dann übergeben werden.
Das das alles automatisch passiert wenn man dieses Sub unter Bearbeiten/Tabelle/Tabellenereignisse dem 'Doppelclick' zuweist hab ich jetzt erst kapiert :) :)

Thema Ende

gruss Luftschraube

H-J-B
Beiträge: 1
Registriert: Di 26. Nov 2019, 12:32

Re: Reaktion auf Maustaste Doppelclick

Beitrag von H-J-B » Mi 27. Nov 2019, 21:16

Hallo zusammen,

ich habe nun den Umstieg von Microsoft auf LibreOffice gewagt.
Da ich sehr viel mit Makros/Module in Excel gearbeitet habe, ist es nun schwer.
Hier bin ich noch nicht hinter die Funktion Doppelklick gestiegen. Im Forum habe ich folgendes gefunden:
sub schreib_x_3(ereignis)

dim A as Integer

If ereignis.string = "X" Then
ereignis.string = ""
Else
ereignis.string = "X"
End If

end sub
Ich wollte nun anstatt dem "X" die Zahl 1 eintragen. Bin aber mit meinen Versuchen und dem Excelwissen gescheitert. Was muss ich ändern?
HJB

craig
Beiträge: 585
Registriert: Do 21. Apr 2016, 11:42

Re: Reaktion auf Maustaste Doppelclick

Beitrag von craig » Mi 27. Nov 2019, 22:02

Hallo,

Musterdatei enthält das Makro und erklärende Screenshots:
Tabellenereignis DoppelKlick.ods
(37.82 KiB) 49-mal heruntergeladen
Gruß

Craig

Nie die Sicherungskopie vergessen!

════════════════════════════════════════════════
WIN 10 Pro 64-Bit • LO 6.4.4.2 (x64) • AOO 4.1.6

Antworten