Ash*_*nko 0 java swing layout-manager mouselistener
我分别在MouseEnter和MouseExit上添加和删除JButton.这工作正常,但当按钮添加到面板时,它会显示在右上角而不是BorderLayout.SOUTH
指定的位置.
Frame只有一个JPanel,我添加的唯一一行是
jPanel1.addMouseListener(new myMouseListener(jPanel1));
Run Code Online (Sandbox Code Playgroud)
鼠标监听器
package example;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JButton;
import javax.swing.JPanel;
public class myMouseListener extends MouseAdapter{
JButton btn;
JPanel panel;
public myMouseListener(JPanel panel)
{
this.panel = panel;
this.btn = new JButton("Test");
this.btn.setSize(40, 40);
}
public void mouseEntered(MouseEvent e) {
panel.setBackground(Color.red);
panel.add(btn, BorderLayout.SOUTH);
}
public void mouseExited(MouseEvent e) {
panel.setBackground(Color.blue);
panel.remove(btn);
}
}
Run Code Online (Sandbox Code Playgroud)
你可以在这里下载一个sscce
http://www.filehosting.org/file/details/302851/Example.zip
任何人都可以对这个问题有所了解吗?
归档时间: |
|
查看次数: |
465 次 |
最近记录: |