2015-03-07 11 views
0

Я делаю проект для школы и имею небольшую проблему. Я использовал фреймы с setUndecorated и добавил код, чтобы сделать его подвижным, используя это: Making a java swing frame movable and setUndecoratedВыполнение setundecorated, tabbedpane movable

Он отлично работает, за исключением одного кадра, в котором я использую вкладку.

Вот изображение лучше объяснить это: http://gyazo.com/6cea08f42347841a3846bdfffe9e3d71

Вот мой код, где я делаю tappedpane:

public Main() { 

      icon = new ImageIcon(getClass().getResource("usericon.png")); 
      icon2 = new ImageIcon(getClass().getResource("aboicon.png")); 
      icon3 = new ImageIcon(getClass().getResource("iconcoin.png")); 
      icon4 = new ImageIcon(getClass().getResource("icongewicht2.png")); 

    JTabbedPane jtbExample = new JTabbedPane(); 
    JPanel Paneel1 = new Paneel1();     
    jtbExample.addTab("Klanten",icon , Paneel1); 

    jtbExample.setSelectedIndex(0); 

    JPanel Paneel2 = new Paneel2(); 
    jtbExample.addTab("Abonnement",icon2, Paneel2); 

    JPanel Paneel3 = new Paneel3(); 
    jtbExample.addTab("Geld opladen",icon3, Paneel3); 

    JPanel Paneel4 = new Paneel4(); 
    jtbExample.addTab("Schema's",icon4, Paneel4); 

    // Add the tabbed pane to this panel. 
    setLayout(new BorderLayout()); 
    add(jtbExample); 

} 


} 

Заранее спасибо

ответ

1

You're добавление мыши-слушателю JPanel, который в вашем случае перекрывается JTabbedPane. Поэтому вы должны добавить Mouse-Listeners в JTabbedPane. Просто замените f.addMouse(Motion)Listener на jtbExample.addMouse(Motion)Listener.

jtbExample.addMouseListener(new MouseListener(){ 
     public void mouseReleased(MouseEvent e) { 
      mouseDownCompCoords = null; 
     } 
     public void mousePressed(MouseEvent e) { 
      mouseDownCompCoords = e.getPoint(); 
     } 
     public void mouseExited(MouseEvent e) { 
     } 
     public void mouseEntered(MouseEvent e) { 
     } 
     public void mouseClicked(MouseEvent e) { 
     } 
    }); 

    jtbExample.addMouseMotionListener(new MouseMotionListener(){ 
     public void mouseMoved(MouseEvent e) { 
     } 

     public void mouseDragged(MouseEvent e) { 
      Point currCoords = e.getLocationOnScreen(); 
      f.setLocation(currCoords.x - mouseDownCompCoords.x, currCoords.y - mouseDownCompCoords.y); 
     } 
    }); 

 Смежные вопросы

  • Нет связанных вопросов^_^