19. juni 2006 - 13:13
Der er
10 kommentarer og 1 løsning
Højreklik
Er der nogen der kan fortælle mig hvordan jeg i et stykke kode som dette kan detektere om der er tale om et højreklik: public boolean mouseDrag(Event event, int i, int j) { newx = i; newy = j; if(mouseInViewer) { panning = true; if(event.shiftDown()) zoom = 0.970873786407767D; else if(event.controlDown()) zoom = 1.03D; else zoom = 1.0D; ResetCursor(); } repaint(); return true; } Kan det udlæses af event? For det er ikke lige lykkedes mig :(
Annonceindlæg fra Computerworld
Så vidt jeg husker, kan dette gøre det if(event.getButton() == event.BUTTON3) System.out.println("Højreklik"); if(event.getButton() == event.BUTTON1) System.out.println("Venstreklik");
Min compiler siger den ikke genkender .getButton() kommandoen... :(
Metoden er tilføjet i version 1.4, er din version af JDK mindre end 1.4 ?
Anvender BlueJ til at kompilere
Prøv at ændre metoden til nedenstående - burde give samme effekt HUSK import java.awt.event.*; i toppen af filen public boolean mouseDrag(MouseEvent event, int i, int j) { newx = i; newy = j; if(event.getButton() == event.BUTTON3) System.out.println("Højreklik"); if(mouseInViewer) { panning = true; if(event.isControlDown()) zoom = 0.970873786407767D; else if(event.isControlDown()) zoom = 1.03D; else zoom = 1.0D; ResetCursor(); } repaint(); return true; }
Nice, nu virker det. You're the man! :) Smid et svar og få dine point :)
20. juni 2006 - 10:47
#10
Var desværre lidt for hurtig der :( Det kompilerede, men mouseDrag() bliver åbenbart ikke kaldt når event-parametren ændres... Nogen idé til hvad der skal ændres for at den benytter den når jeg trækker med musen i min Applet? Du skal nok få pointene :)
20. juni 2006 - 11:32
#11
Nå, der skal lige implementeres en mouselistener, samt nye metoder. Men har vist fundet ud af det... :)
Kurser inden for grundlæggende programmering