[英]How to Enlarge JButton Image when MouseOver “Mouse hovers over it”
当我将鼠标悬停在“开始”按钮上时,它几乎不会放大。 这是我的代码下面的任何想法,为什么不会呢? 如果能给我看一个示例代码,那真的有帮助! :)“我还是Java的新手,所以这就是为什么示例代码可以帮助我更好地感谢您!”。
public class Window extends JFrame implements MouseListener {
private static final long serialVersionUID = 1L;
private static JButton button;
private static JFrame frame = new JFrame("Scroller Runner v0.2.0");
public static void main(String[] args) throws IOException {
new Window();
JButton button = new JButton();
JTextPane TEXT = new JTextPane();
BufferedImage buttonIcon;
button = new JButton(new ImageIcon("C:\\Users\\GOULDEN\\Desktop\\MENU_START.png"));
button.setBorder(BorderFactory.createEmptyBorder());
button.setContentAreaFilled(false);
button.setBounds(490, 250, 300, 75);
button.setCursor(new Cursor(Cursor.HAND_CURSOR));
button.addMouseListener(null);
frame.setSize(1280, 720);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
frame.setResizable(false);
frame.setContentPane(new JLabel(new ImageIcon(ImageIO.read(new File("C:\\Users\\GOULDEN\\Desktop\\MAIN_MENU.png")))));
frame.pack();
frame.add(button);
frame.setVisible(true);
}@Override
public void mouseEntered(MouseEvent e) {
button.setBounds(550, 300, 300, 75);
this.repaint();
}
这段代码对我有用。
当您要更改大小时,只有setSize()
更好。
button.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseEntered(java.awt.event.MouseEvent evt) {
button.setSize(WIDTH,HEIGHT);
}
});
更换:
button.setBounds(550, 300, 300, 75);
与:
button.setPreferredSize(new Dimension(500, 100));
尝试随附的代码对我有用
private JFrame myFrame = new JFrame();
@Override
public void mouseEntered(java.awt.event.MouseEvent evt) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
myFrame.setAlwaysOnTop(true);
myFrame.initialize(instance);
myFrame.setLocation(instance.nMainPanelXPosition,instance.nMainPanelYPosition);
myFrame.setVisible(true);
}
});
}
public void mouseExited(java.awt.event.MouseEvent evt) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
myFrame.setVisible(false);
}
});
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.