Kreis mit gedrückter Maus bewegen

Status
Nicht offen für weitere Antworten.

Mr.Bean

Mitglied
Hi,
ich würde ganz gerne einen gezeichneten Kreis innerhalb meines Frames bewegen (bei gedrückter Maustaste) und ihn dann irgendwo ablegen, kann mir da jemand weiter helfen?
Danke
 

Mr.Bean

Mitglied
Code:
	public void paint(Graphics g)
	{
		//Typcasting von Graphics zu Graphics2D
		Graphics2D g2d =  (Graphics2D)g;
		
		//Ermittelt die bestehende Auflösung des Betriebsystems
		Dimension windowScreensize = Toolkit.getDefaultToolkit().getScreenSize();
		
		int mitteX = windowScreensize.width / 2;
		int mitteY = windowScreensize.height / 2;
	
		
		//Zeichnen der Spielsteine
		g2d.setColor(Color.WHITE);
		g2d.fillOval(mitteX+windowScreensize.width / 3, mitteY, windowScreensize.width / 17, windowScreensize.width / 17);

		g2d.setColor(Color.BLACK);
		g2d.fillOval(mitteX+windowScreensize.width / 3, mitteY+windowScreensize.width / 17, windowScreensize.width / 17, windowScreensize.width / 17);

		
	}

Hier mal der Quellcode...
 

Wildcard

Top Contributor
So wird's nicht funktionieren.
Du brauchst ein Datenmodell das deine Kreise repräsentiert.
Jeder Kreis muss ein Objekt sein.
Mit einem MouseMotionListener kannst du dann die Objekte verschieben.
Vorher musst du die Entscheidung treffen ob du 'Kreis' von JComponent erben lassen willst, oder du eine einzige JComponent hast die eine Collection von Kreisen besitzt.
 

Mr.Bean

Mitglied
Ich brauch ja zweimal 9 Kreise, dann wäre doch die zweite Variante sinvoller, oder geht auch die erstere?
 

Marco13

Top Contributor
Du solltest die Klasse "Kreis" NICHT von JComponent erben lassen. Ein Kreis hat erstmal genu ZWEI Eigenschaften: Einen Mittelpunkt und einen Radius. Eine JComponent hat erstmal ein paar Eigenschaften mehr...
Code:
    private boolean isAlignmentXSet;
    private float alignmentX;
    private boolean isAlignmentYSet;
    private float alignmentY;
    protected transient ComponentUI ui;
    protected EventListenerList listenerList = new EventListenerList();
    private transient ArrayTable clientProperties;
    private VetoableChangeSupport vetoableChangeSupport;
    private boolean autoscrolls;
    private Border border;
    private int flags;
    private InputVerifier inputVerifier = null;
    private boolean verifyInputWhenFocusTarget = true;
    transient Component         paintingChild;
    private JPopupMenu popupMenu;
    private InputMap focusInputMap;
    private InputMap ancestorInputMap;
    private ComponentInputMap windowInputMap;
    private ActionMap actionMap;
    private boolean aaText;
    int ncomponents;
    Component component[] = new Component[0];
    LayoutManager layoutMgr;
    private LightweightDispatcher dispatcher;
    private transient FocusTraversalPolicy focusTraversalPolicy;
    private boolean focusCycleRoot = false;
    private boolean focusTraversalPolicyProvider;
    private transient Set printingThreads;
    private transient boolean printing = false;
    transient ContainerListener containerListener;
    transient int listeningChildren;
    transient int listeningBoundsChildren;
    transient int descendantsCount;
    transient ComponentPeer peer;
    transient Container parent;
    transient AppContext appContext;
    int x;
    int y;
    int width;
    int height;
    Color       foreground;
    Color       background;
    Font        font;
    Font        peerFont;
    Cursor      cursor;
    Locale      locale;
    transient GraphicsConfiguration graphicsConfig = null;
    transient BufferStrategy bufferStrategy = null;
    boolean ignoreRepaint = false;
    boolean visible = true;
    boolean enabled = true;
    boolean valid = false;
    DropTarget dropTarget;
    Vector popups;
    private String name;
    private boolean nameExplicitlySet = false;
    private boolean focusable = true;
    private int isFocusTraversableOverridden = FOCUS_TRAVERSABLE_UNKNOWN;
    Set[] focusTraversalKeys;
    private boolean focusTraversalKeysEnabled = true;
    Dimension minSize;
    boolean minSizeSet;
    Dimension prefSize;
    boolean prefSizeSet;
    Dimension maxSize;
    boolean maxSizeSet;
    transient ComponentOrientation componentOrientation= ComponentOrientation.UNKNOWN;
    boolean newEventsOnly = false;
    transient ComponentListener componentListener;
    transient FocusListener focusListener;
    transient HierarchyListener hierarchyListener;
    transient HierarchyBoundsListener hierarchyBoundsListener;
    transient KeyListener keyListener;
    transient MouseListener mouseListener;
    transient MouseMotionListener mouseMotionListener;
    transient MouseWheelListener mouseWheelListener;
    transient InputMethodListener inputMethodListener;
    transient RuntimeException windowClosingException = null;
    long eventMask = AWTEvent.INPUT_METHODS_ENABLED_MASK;
    private static final DebugHelper dbg = DebugHelper.create(Component.class);
    private PropertyChangeSupport changeSupport;
    boolean isPacked = false;
... die man man alle nicht braucht - ebensowenig wie die etlichen hundert Methoden.

Von deiner Klasse "Kreis" könntes du dann zwei mal 9 Objekte anlegen, und die nacheinander auf EIN JPanel zeichnen.
 

KSG9|sebastian

Top Contributor
An deiner Zeichenfläche registrierst du nen MouseListener/MouseMotionListener. Dadrin fängst du ab

1. ob auf einen Kreis geklickt wurde
2. auf welchen Kreis geklickt wurde
3. wie die Maus bewegt wird

Wenn auf ein Kreis geklickt wurde musst du dir den merken, z.B. in einer Instanzvariable. Bei loslassen der Maus wird die Instanzvariable wieder auf null gesetzt.
Bei einer Mausbewegung musst du abfragen ob ein Kreis noch angeklickt ist. Falls ja musst du den Mittelpunkt und/oder den Radius deines Kreises ändern und repaint() aufrufen.
Repaint zeichnet nur deine Kreise anhand von Mittelpunkt und Radius.
Die Logik sollte in den Listenern sein bzw. von den Listenern aus angesteuert werden, NICHT im paint.

Edit:

Code:
class Kreis{
  private int x;
  private int y;
  private int radius;

  public Kreis(int x, int y, int radius){
    this.x = x;
    this.y = y;
    this.radius = radius;
  }
  public void getX(){
     return x;
  }
  public void setX(int x){
    this.x = x;
  }
  public void getY(){
     return y;
  }
  public void setY(int y){
    this.y = y;
  }
  public void getRadius(){
     return radius;
  }
  public void setRadius(int radius){
    this.radius = radius;
  }
  public void containsPoint(int x, int y){
     if(Math.abs(this.x - x) <= radius && Math.abs(this.y - y) <=radius)
        return true;
     return false;
  }
}
class Zeichnen extends JPanel{
  private List<Kreis> kreise = new ArrayList<Kreis>();
  private Kreis selectedKreis = null;
  private int oldX = 0;
  private int oldY = 0;
  public Zeichnen(){
     kreise.add(new Kreis(4, 4, 5));    
     kreise.add(new Kreis(5, 5, 4));
     kreise.add(new Kreis(6, 6, 3));
     kreise.add(new Kreis(7, 7, 2));

     addMouseListener(new MouseAdapter(){
         public void mousePressed(MouseEvent e){
            Kreis sel = getKreis(e.getX(), e.getY());
            if(sel != null){
               selectedKreis = sel;
               oldX = sel.getX();
               oldY = sel.getY();
               setCursor(Cursor.Hand);
            }
         }
         public void mouseReleased(MouseEvent e){
            selectedKreis = null;
            setCursor(Cursor....);
         }
     });
    addMouseMotionListener(new MouseMotionListener(){
        public void mouseMoved(MouseEvent e){
           if(selectedKreis != null){
              selectedKreis.setX(Math.abs(selectedKreis.getX() - e.getX()));
              selectedKreis.setY(Math.abs(selectedKreis.getY() - e.getY()));
              repaint();
           }
        }
    });
  }
  public Kreis getKreis(int x, int y){
     for(Kreis k : kreise){
        if(k.containsPoint(x, y))
           return k;
     }
     return null;
  }
  public void paint(Graphics g){
     for(Kreis k : kreise){
        g.fillOval(k.getX(), k.getY(), k.getRadius(), k.getRadius());
     }
  }
}

Ist nur blind runtergetippt, diverse Listener müssen vervollständigt werden, logik überprüft u.s.w....

EDIT2: Kreis eingefügt, Methode containsPoint muss noch sauber implementiert werden
 

Mr.Bean

Mitglied
Aber wie mache ich eine eigene Klasse Kreis wenn ich sie nicht erben lasse, und wie kann ich sie dann in meinem Frame hinzufügen?
 

Wildcard

Top Contributor
Marco13 hat gesagt.:
Du solltest die Klasse "Kreis" NICHT von JComponent erben lassen. Ein Kreis hat erstmal genu ZWEI Eigenschaften: Einen Mittelpunkt und einen Radius. Eine JComponent hat erstmal ein paar Eigenschaften mehr...
Ich würde es auch nicht machen.
Mr.Bean hat aber vermutlich in diesem Umfeld weniger Erfahrung aufzuweisen.
JComponents zu verwenden würde also dahingehend den großen Vorteil bieten, das einem sehr viel Arbeit abgenommen wird und es daher erstmal leichter zu implementieren ist.
 

Mr.Bean

Mitglied
Jetzt habe ich den Kreis eingefügt bekommen, nur leider kann ich auf dem "ContentPane" nur ein gezwichnetes Objekt einfügen, entweder das Spielbrett oder den Spielstein. Habs mal mit dem Glasspane probiert hat aber so nicht funktioniert, könnt ihr mir da weiter helfen?

Und mein zweites Problem ist, das der Kreis(Spielstein) leider nicht auf dem Tastendruck reagiert, vielleicht hat ja auch da jemand eine Lösung für mich?
 

KSG9|sebastian

Top Contributor
Kannst mal deinen Code zeigen? Und was heißt "entweder Spielbrett oder Spielstein"? Du kannst soviel auf dem Contentpane zeichnen wie du willst...

Zeig mal die Listener und die paint-Methode. Ebenso die Methode welche den angeklickten Kreis rausfinden soll
 

Mr.Bean

Mitglied
Code:
class SteinZeichnen extends JComponent
{  
	  
	 
	//Ermittelt die bestehende Auflösung des Betriebsystems
	Dimension windowScreensize = Toolkit.getDefaultToolkit().getScreenSize();
		
	int mitteX = windowScreensize.width / 2;
	int mitteY = windowScreensize.height / 2;
	
	private Spielsteine stein = new Spielsteine(mitteX+windowScreensize.width / 3,mitteY);
	private Spielsteine selectedKreis = null; 
	private int oldX = 0; 
	private int oldY = 0; 
	
	public SteinZeichnen()
	{ 
	   
    addMouseListener(new MouseAdapter()
    { 
    	public void mousePressed(MouseEvent e)
    	{ 
    		Spielsteine sel = new Spielsteine(e.getX(), e.getY()); 
            if(sel != null){ 
               selectedKreis = sel; 
               oldX = sel.getX(); 
               oldY = sel.getY(); 
               //setCursor(Cursor.HAND_CURSOR); 
            } 
    	} 
    	public void mouseReleased(MouseEvent e)
    	{ 
    		selectedKreis = null; 
    		//setCursor(Cursor....); 
    	} 
    }); 
    
    addMouseMotionListener(new MouseMotionAdapter()
    { 
        public void mouseMoved(MouseEvent e)
        { 
           if(selectedKreis != null)
           { 
              selectedKreis.setX(Math.abs(selectedKreis.getX() - e.getX())); 
              selectedKreis.setY(Math.abs(selectedKreis.getY() - e.getY())); 
              repaint(); 
           } 
        } 
    }); 
	} 
	  /*public Spielsteine getKreis(int x, int y){ 
	     for(Kreis k : kreise){ 
	        if(k.containsPoint(x, y)) 
	           return k; 
	     } 
	     return null; 
	  } */
	public void paint(Graphics g)
	{ 
		//Typcasting von Graphics zu Graphics2D
		Graphics2D g2d =  (Graphics2D)g;
		
		g2d.setColor(Color.WHITE);
		g2d.fillOval(stein.getX(), stein.getY(), stein.getRadius(), stein.getRadius()); 
    
	} 
}
Code:
public class SpielBrett extends JComponent {

	public SpielBrett(){}
	
	public void paint(Graphics g){
		//Typcasting von Graphics zu Graphics2D
		Graphics2D g2d =  (Graphics2D)g;
		
		//Ermittelt die bestehende Auflösung des Betriebsystems
		Dimension windowScreensize = Toolkit.getDefaultToolkit().getScreenSize();
		
		int mitteX = windowScreensize.width / 2;
		int mitteY = windowScreensize.height / 2;
	
		
		//Farbe der Grafik
		g2d.setColor(Color.BLACK);
		//Dicke der Linien
		Stroke stroke = new BasicStroke( 8 ); 
		g2d.setStroke( stroke );
		
		//drei Rechecke werden gesetzt
		g2d.setPaint(Color.white);
		g2d.fillRect(mitteX - windowScreensize.width/3, mitteX - windowScreensize.width/3, windowScreensize.width / 2, windowScreensize.width/2);
		g2d.setPaint(Color.BLACK);
		g2d.drawRect(mitteX - windowScreensize.width/6, mitteX - windowScreensize.width/6, windowScreensize.width / 6, windowScreensize.width / 6);
		g2d.drawRect(mitteX - windowScreensize.width/4, mitteX - windowScreensize.width/4, windowScreensize.width / 3, windowScreensize.width / 3);
		g2d.drawRect(mitteX - windowScreensize.width/3, mitteX - windowScreensize.width/3, windowScreensize.width / 2, windowScreensize.width/2);
		
		
		//alle mögichen gekreutzten Setzpunkte
		//von oben links aussen nach oben links innen
		g2d.drawLine(mitteX - windowScreensize.width/3+1, mitteX - windowScreensize.width/3+1, mitteX - windowScreensize.width/6, mitteX - windowScreensize.width/6);
		//von unten links aussen nach unten links innen
		g2d.drawLine(mitteX - windowScreensize.width/3+1, (mitteX - windowScreensize.width/3)+ windowScreensize.width / 2-2, mitteX - windowScreensize.width/6, (mitteX - windowScreensize.width/6) + windowScreensize.width/6);
		//von oben rechts aussen nach oben rechts innen
		g2d.drawLine((mitteX - windowScreensize.width/3)+ windowScreensize.width / 2-2, mitteX - windowScreensize.width/3+1, (mitteX - windowScreensize.width/6)+windowScreensize.width / 6, mitteX - windowScreensize.width/6);
		//von unten rechts aussen nach unten rechts innen
		g2d.drawLine((mitteX - windowScreensize.width/3)+ windowScreensize.width / 2-2, (mitteX - windowScreensize.width/3)+windowScreensize.width / 2-2, (mitteX - windowScreensize.width/6)+windowScreensize.width / 6, (mitteX - windowScreensize.width/6)+windowScreensize.width / 6);
		//von Mitte links aussen nach Mitte links innen
		g2d.drawLine(mitteX - windowScreensize.width/3, (mitteX - windowScreensize.width/3)+((windowScreensize.width / 2)/2)-1, mitteX - windowScreensize.width/6, (mitteX - windowScreensize.width/6)+((windowScreensize.width / 6))/2);
		//von Mitte rechts aussen nach Mitte rechts innen
		g2d.drawLine((mitteX - windowScreensize.width/3)+ windowScreensize.width / 2, (mitteX - windowScreensize.width/3)+((windowScreensize.width / 2)/2)-1, (mitteX - windowScreensize.width/6)+windowScreensize.width / 6, (mitteX - windowScreensize.width/6)+((windowScreensize.width / 6))/2);
		//von Mitte oben aussen nach Mitte oben innen
		g2d.drawLine((mitteX - windowScreensize.width/3)+((windowScreensize.width / 2)/2)-1, (mitteX - windowScreensize.width/3), (mitteX - windowScreensize.width/6)+((windowScreensize.width / 6))/2, (mitteX - windowScreensize.width/6));
		//von Mitte unten aussen nach Mitte unten innen
		g2d.drawLine((mitteX - windowScreensize.width/3)+ (windowScreensize.width / 2)/2-1, (mitteX - windowScreensize.width/3)+windowScreensize.width / 2, (mitteX - windowScreensize.width/6)+(windowScreensize.width / 6)/2, (mitteX - windowScreensize.width/6)+windowScreensize.width / 6);
	
		
	}
}
Code:
public class MainWindow extends JFrame{
	public MainWindow(){
		//erstellt ein Frame
		super("Muehle");
		//Ermittelt die bestehende Auflösung des Betriebsystems
		Dimension windowScreensize = Toolkit.getDefaultToolkit().getScreenSize();
		
		//ob das Aussehen des Fensters verändert werden soll
		JFrame.setDefaultLookAndFeelDecorated(false);
	
		//JPanel right = new JPanel(new GridLayout(1,3,0,0));
		//this.getContentPane().add(left);
		//this.getContentPane().add(right);
		this.getContentPane().setBackground(Color.LIGHT_GRAY);
		this.getContentPane().setMaximumSize(windowScreensize);
		//gibt die Größe des Frames an und macht es sichtbar
		this.setBounds(0, 0, windowScreensize.width, windowScreensize.height);
		SteinZeichnen stein = new SteinZeichnen();
		SpielBrett brett = new SpielBrett();
		stein.setBounds(10,10,400,400); 
		//brett.setBounds(410,410,40,40); 

		
		
		Container pane = getContentPane(); 
		
		pane.setLayout(null); 

		
		pane.add(stein); 
		//pane.add(brett); 

		
		this.setContentPane(pane);
		
		this.setVisible(true);
		//Aufruf der Klasse CloseWindow zum Schließen des Fensters und des Prozesses
		this.addWindowListener(new CloseWindow());
		
	}

So sieht das dann in etwa aus, die ausgabe auf dem Contentpane ist jetzt etwas durcheinander, da ich dort mehrere Tips ausprobiert hatte...
 

KSG9|sebastian

Top Contributor
Ich seh nirgends Code mit dem deine Spielsteine gezeichnet werden.
Ist es absicht dass du in der mousePressed-Methode einen neuen Spielstein erstellst?

Beschreib bitte nochmal genau dein Ziel und gib kurz den Code für Spielstein.
 

KSG9|sebastian

Top Contributor
Nimm mal folgenden Code, ist lauffähig. Benötigt natürlich ein paar verfeinerungen, aber ein paar Kreise mahlen, einen auswählen und den bewegen funktioniert.
Die bewegung ist nicht sonderlich toll gelöst (der Kreis erhält die Koordinaten der aktuellen Mausposition). Aber zum anschauen und Testen reicht es.

Main.java
Code:
package de.steine;

import java.awt.Color;
import java.awt.Cursor;
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
import java.util.ArrayList;
import java.util.List;

import javax.swing.JFrame;

public class Main extends JFrame
{
    // standartcursor für bewegungen
    private Cursor              CURSOR_MOVE    = new Cursor(Cursor.MOVE_CURSOR);
    // defaultcursor
    private Cursor              CURSOR_DEF     = new Cursor(Cursor.DEFAULT_CURSOR);

    // liste mit kreisen
    private List<Kreis>         kreise         = new ArrayList<Kreis>();
    // aktuell ausgewählter kreis
    private Kreis               selectedKreis  = null;

    private MouseListener       mouseListener  = new MouseListener()
                                               {

                                                   public void mouseClicked(MouseEvent e)
                                                   {

                                                   }

                                                   public void mouseEntered(MouseEvent e)
                                                   {

                                                   }

                                                   public void mouseExited(MouseEvent e)
                                                   {

                                                   }

                                                   public void mousePressed(MouseEvent e)
                                                   {

                                                       // kreis finden auf den geklickt wurde
                                                       
                                                       Kreis k = findKreis(e.getX(), e.getY());
                                                       if (k != null)
                                                       {
                                                           selectedKreis = k;
                                                           repaint();
                                                           getContentPane().setCursor(CURSOR_MOVE);
                                                       }

                                                   }

                                                   public void mouseReleased(MouseEvent e)
                                                   {
                                                       // kein kreis mehr ausgewählt!
                                                       selectedKreis = null;
                                                       getContentPane().setCursor(CURSOR_DEF);
                                                       repaint();

                                                   }

                                               };

    private MouseMotionListener motionListener = new MouseMotionListener()
                                               {

                                                   public void mouseDragged(MouseEvent e)
                                                   {
                                                       if (selectedKreis != null)
                                                       {       
                                                           // koordinaten des kreis ändern
                                                           selectedKreis.setX(e.getX());
                                                           selectedKreis.setY(e.getY());
                                                           
                                                           repaint();
                                                       }

                                                   }

                                                   public void mouseMoved(MouseEvent e)
                                                   {

                                                   }

                                               };

    public Main()
    {
        super("Spielsteine");

        super.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        super.setBounds(20, 20, 400, 400);

        // ein paar kreise erzeugen
        kreise.add(new Kreis(70, 130, 50));
        kreise.add(new Kreis(90, 110, 50));
        kreise.add(new Kreis(110, 90, 50));
        kreise.add(new Kreis(130, 70, 50));

        addMouseListener(mouseListener);
        addMouseMotionListener(motionListener);
        setVisible(true);
    }

    public void paint(Graphics g)
    {
        // weißes quadrat mahlen
        g.setColor(Color.WHITE);
        g.fillRect(0, 0, 400, 400);

        // sämtliche kreise zeichnen
        for (Kreis k : kreise)
        {
            // der momentan ausgewählte kreis erhält zur besseren übersicht einen roten rand
            // die anderen kreise bekommen einen schwarzen rahmen
            if(k.equals(selectedKreis)){
                g.setColor(Color.RED);
            } else{
                g.setColor(Color.BLACK);
            }
            g.drawOval(k.getX(), k.getY(), k.getRadius(), k.getRadius());

        }

    }

    /**
     * Sucht einen Kreis mit den übergebenen Koordinaten
     * 
     * @param x der x-Wert
     * @param y der y-Wert
     * @return Kreis welcher den Punkt x/y enthält, sonst null
     */
    public Kreis findKreis(int x, int y)
    {
        for (Kreis k : kreise)
        {
            if (k.containsPoint(x, y))
            {
                return k;
            }
        }
        return null;
    }

    /**
     * @param args
     */
    public static void main(String[] args)
    {
        new Main();

    }

}


Kreis.java
Code:
package de.steine;

public class Kreis
{
    private int x;
    private int y;
    private int radius;
    
    public Kreis(int x, int y, int radius){
        this.x = x;
        this.y = y;
        this.radius = radius;
    }
    
    public int getRadius()
    {
        return radius;
    }
    public void setRadius(int radius)
    {
        this.radius = radius;
    }
    public int getX()
    {
        return x;
    }
    public void setX(int x)
    {
        this.x = x;
    }
    public int getY()
    {
        return y;
    }
    public void setY(int y)
    {
        this.y = y;
    }
    public boolean containsPoint(int pX, int pY){
        return Math.abs(this.x - pX) <= radius && Math.abs(this.y - pY) <= radius;
    }
    
}

Die Klassen müssen beide im package "de.steine" liegen.

viel Spaß :)

Gruß Sebastian
 

Mr.Bean

Mitglied
Da bei mir eine eigene Klasse für das Zeichnen des Steines exestiert, und ich das Objekt in einer anderen Klasse dem Fenster (Contentpane) hinzufüge...., wie kann ich dann die Listener noch hinzufügen?
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
W JavaFX Ich kann keinen Kreis richtig zeichnen AWT, Swing, JavaFX & SWT 8
L 2D-Grafik Linie von Kreis zu Kreis AWT, Swing, JavaFX & SWT 3
S Kreis vergrößern/verkleinern mit Buttons AWT, Swing, JavaFX & SWT 1
S GUI Kreis zeichnen AWT, Swing, JavaFX & SWT 13
M JavaFX Bild zur ImageView in einem Kreis anzeigen. AWT, Swing, JavaFX & SWT 4
L 2D-Grafik Dreieck in einem Kreis??? AWT, Swing, JavaFX & SWT 1
T Swing / Kreis zeichnen AWT, Swing, JavaFX & SWT 2
G Mehrere Strings um Kreis zeichnen und positionieren AWT, Swing, JavaFX & SWT 0
D Swing Manuellen Kreis zeichen AWT, Swing, JavaFX & SWT 22
T Kreis in Jlabel darstellen. AWT, Swing, JavaFX & SWT 13
J Grafik (Kreis) schneller bewegen? AWT, Swing, JavaFX & SWT 6
E Kreis-Mal-Programm AWT, Swing, JavaFX & SWT 7
S Kreis in Kreis AWT, Swing, JavaFX & SWT 5
P Elemente im Kreis aufstellen AWT, Swing, JavaFX & SWT 5
M 2D-Grafik "Unvollständiger" Kreis(kontur) AWT, Swing, JavaFX & SWT 8
T Einen Kreis anzeigen AWT, Swing, JavaFX & SWT 14
B 2D-Grafik Text in einem Kreis zentrieren AWT, Swing, JavaFX & SWT 3
Semox 2D-Grafik Radialer Verlauf in einem Kreis AWT, Swing, JavaFX & SWT 4
T 2D-Grafik Kreis "von Hand" zeichnen -> jedesmal repaint()? AWT, Swing, JavaFX & SWT 6
P Swing FocusTraversalPolicy dreht sich im Kreis AWT, Swing, JavaFX & SWT 2
J Java2D Kreis/Kurven Frage AWT, Swing, JavaFX & SWT 2
Semox Swing Kreis löschen durch Mausklick in der Nähe AWT, Swing, JavaFX & SWT 2
Dit_ Ein Kreis als Graphics2D oder als Ellipse2D Objekt AWT, Swing, JavaFX & SWT 19
K Wenn Mauszeiger in der Nähe vom Kreis, soll Kreis an eine andere Stelle springen AWT, Swing, JavaFX & SWT 8
Spin Hilfe - Erklärungsbedarf für Kreis AWT, Swing, JavaFX & SWT 5
H Punkte im Kreis AWT, Swing, JavaFX & SWT 3
G kreis malen -> welche funktion? AWT, Swing, JavaFX & SWT 3
G Farbe ändern bei Klick auf einen Kreis AWT, Swing, JavaFX & SWT 5
U Farbe von Kreis AWT, Swing, JavaFX & SWT 3
G Kreis zeichnen und mit Maus ziehen AWT, Swing, JavaFX & SWT 3
S Kreis als JFrame AWT, Swing, JavaFX & SWT 9
TheJavaKid Kreis, Rechteck, Linie. verschieben AWT, Swing, JavaFX & SWT 5
T Kreis ActionListener AWT, Swing, JavaFX & SWT 5
C Gedrückter Button in andere Klasse übergeben AWT, Swing, JavaFX & SWT 5
Y Aktion während gedrückter Taste AWT, Swing, JavaFX & SWT 2
J button verschieben mit gedrückter (linker) maustaste AWT, Swing, JavaFX & SWT 2
G Linie mit der Maus auswählen AWT, Swing, JavaFX & SWT 5
B mit maus Objekt bewegen AWT, Swing, JavaFX & SWT 3
R Swing Panel nur bei Maus sichtbar AWT, Swing, JavaFX & SWT 2
B mit Maus verschiebbares Panel AWT, Swing, JavaFX & SWT 2
C JTextField Inhalt mit Maus selektieren wenn disabled AWT, Swing, JavaFX & SWT 2
S JavaFX Fenster aufkommen lassen, wenn mit der Maus über bestimmten Bereich fahren AWT, Swing, JavaFX & SWT 1
F Event wenn Maus eine JList verlässt AWT, Swing, JavaFX & SWT 13
T Timer und GIF Animationen pausieren während Maus sich bewegt AWT, Swing, JavaFX & SWT 4
M Bild in JPanel mit Maus einfügen AWT, Swing, JavaFX & SWT 0
B Swing Form undecorated: Beim Bewegen geht die Maus immer automatisch zur linken Seite. AWT, Swing, JavaFX & SWT 7
L 2D-Grafik Bild in Richtung Maus drehen AWT, Swing, JavaFX & SWT 18
K Swing Maus in Panel einsperren AWT, Swing, JavaFX & SWT 8
D Swing JList keine Selektionsänderung bei "dragged-Maus" AWT, Swing, JavaFX & SWT 4
A JFrame Größenänderung mit Maus und GridLayout AWT, Swing, JavaFX & SWT 10
J Maus "locken" für Menü AWT, Swing, JavaFX & SWT 8
D Grafiken an Maus anhängen AWT, Swing, JavaFX & SWT 2
P Pfeilpolygon per Maus rotierbar machen - Kleine Schwierigkeiten AWT, Swing, JavaFX & SWT 29
P Event Handling Gedrückte Maus Blockiert MausEvents AWT, Swing, JavaFX & SWT 2
R Swing Per Maus JLabel resizen AWT, Swing, JavaFX & SWT 6
F Maus von alleine bewegen! AWT, Swing, JavaFX & SWT 8
G Swing JPanel per Maus verschieben AWT, Swing, JavaFX & SWT 5
A SWT Tooltip soll nicht verschwinden, solange User mit Maus auf Control ist AWT, Swing, JavaFX & SWT 5
C AWT Mausbarriere Maus fangen AWT, Swing, JavaFX & SWT 10
J "Auswahlfenster" mit Maus auf JLabel zeichnen AWT, Swing, JavaFX & SWT 4
W Swing Bild zeichnen wenn Maus an bestimmter Position ist AWT, Swing, JavaFX & SWT 4
J Inaktivität von Maus und Tastatur AWT, Swing, JavaFX & SWT 4
G AWT Images aus Imagearray an die Maus pappen und bewegen AWT, Swing, JavaFX & SWT 4
F Element anzeigen / erstellen. Maus vs Controller AWT, Swing, JavaFX & SWT 7
M 3D-Grafik Bewegung mit der Maus ohne Klicken AWT, Swing, JavaFX & SWT 10
F Swing Objekte mit Maus verschieben AWT, Swing, JavaFX & SWT 8
O Swing JButton werden richtig gewechselt aber die Maus macht die alten wieder Sichtbar?? AWT, Swing, JavaFX & SWT 5
Y AWT Maus Koordinaten abspeichern in eine Textfile AWT, Swing, JavaFX & SWT 3
Weltall 7 AWT Maus-Events werden doppelt ausgeführt AWT, Swing, JavaFX & SWT 12
C permanente aktualisierung der Koordinaten der Maus auf einem Panel AWT, Swing, JavaFX & SWT 8
J maus festlegen AWT, Swing, JavaFX & SWT 6
C paintComponent mit Maus verschieben - wie? AWT, Swing, JavaFX & SWT 2
T Swing JComboBox: Listeneinträge mit der Maus verschieben AWT, Swing, JavaFX & SWT 5
O JSlider - wie unterscheide ich mit Maus verändert und durch setValue verändert. AWT, Swing, JavaFX & SWT 16
W Swing Maus Rastersprung AWT, Swing, JavaFX & SWT 3
S Swing JTable Auswahl mehrerer Zellen mit STRG+Maus AWT, Swing, JavaFX & SWT 3
E Hilfetext anzeigen beim Überfahren mit der Maus AWT, Swing, JavaFX & SWT 3
G Maus über Button AWT, Swing, JavaFX & SWT 3
S Funktion nur ausführen, wenn Maus über Componente ist AWT, Swing, JavaFX & SWT 2
G Listenelemente mit der Maus verschieben AWT, Swing, JavaFX & SWT 4
B kein MouseEvent bei zu schneller Bewegung der Maus AWT, Swing, JavaFX & SWT 7
B JTable - Wechsel der Spalte bei TAB, RETURN oder Maus AWT, Swing, JavaFX & SWT 5
D Mit der Maus in verschiedene Modi wechseln AWT, Swing, JavaFX & SWT 15
Z Buttons erscheinen erst wenn man mit der Maus drüber geht AWT, Swing, JavaFX & SWT 7
G Elemente erst da wenn mit Maus drüber gefahren bin AWT, Swing, JavaFX & SWT 2
F Größenänderung mittels Maus - selbst implementieren? AWT, Swing, JavaFX & SWT 3
R Einstellen der Maus Rad Geschwindigkeit beim Scrollen AWT, Swing, JavaFX & SWT 3
W Maus Rahmen zeichnen AWT, Swing, JavaFX & SWT 10
A JFileChooser - Mehrere Dateien per Maus markieren (nokeys) AWT, Swing, JavaFX & SWT 7
V JTable Handling Fokus on Keystroke und Maus Doubleclick AWT, Swing, JavaFX & SWT 9
R JTable: Maus-Click ohne Datensätze AWT, Swing, JavaFX & SWT 9
L Größe von Komponenten im Nulllayout mit der Maus verändern. AWT, Swing, JavaFX & SWT 2
J Context Menü Maus AWT, Swing, JavaFX & SWT 3
G JTable selektion der Zeile bei Fokusieren mit der Maus AWT, Swing, JavaFX & SWT 5
T mousemoved abfrage - aber welches event wenn maus weg? AWT, Swing, JavaFX & SWT 2
lin Frame bei Drücken eines Buttons mit Maus verschieben AWT, Swing, JavaFX & SWT 7
G [AWT] Zeichnungen per Maus auswählen AWT, Swing, JavaFX & SWT 8
D Ne Maus Event Frage AWT, Swing, JavaFX & SWT 4
D Polygon mit der Maus zeichnen AWT, Swing, JavaFX & SWT 2
M Zusätzlichen Maus-Klick erzeugen AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben