Java 当鼠标悬停在按钮上时,我想放大它
我一辈子都搞不懂这个。我希望鼠标悬停在菜单中的“开始”按钮上,将其放大50-100px。有什么方法可以做到这一点,可以在这里使用我的代码? 提前谢谢!“我正在使用JavaEclipseBTW”不知道这是否有帮助Java 当鼠标悬停在按钮上时,我想放大它,java,eclipse,image,button,jbutton,Java,Eclipse,Image,Button,Jbutton,我一辈子都搞不懂这个。我希望鼠标悬停在菜单中的“开始”按钮上,将其放大50-100px。有什么方法可以做到这一点,可以在这里使用我的代码? 提前谢谢!“我正在使用JavaEclipseBTW”不知道这是否有帮助 //START_Button JButton button = new JButton("Start"); frame.pack(); JTextPane TEXT = new JTextPane(); BufferedImage buttonIcon;
//START_Button
JButton button = new JButton("Start");
frame.pack();
JTextPane TEXT = new JTextPane();
BufferedImage buttonIcon;
try {
buttonIcon = ImageIO.read(new File("C:\\Users\\GOULDEN\\Desktop\\MENU_START.png"));
button = new JButton(new ImageIcon(buttonIcon));
button.setBorder(BorderFactory.createEmptyBorder());
button.setContentAreaFilled(false);
Container contentPane = frame.getContentPane();
contentPane.add(button);
button.setBounds(500,250,300,75);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
使用
MouseListener
并使用mouseenterned()
和mouseExited()
使按钮变大
声明将在其他方法中访问的变量,以便能够访问它们
import java.awt.Cursor;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
public class Demo extends JFrame implements MouseListener {
private static final long serialVersionUID = 1L;
private JButton startButton;
public Demo() {
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setBounds(100, 100, 500, 500);
this.setLayout(null);
startButton = new JButton("Start");
startButton= new JButton(new ImageIcon("path/to/image.jpg"));
startButton.setBorder(BorderFactory.createEmptyBorder());
startButton.setContentAreaFilled(false);
startButton.setBounds(1, 2, 100, 25);
startButton.setCursor(new Cursor(Cursor.HAND_CURSOR));
startButton.addMouseListener(this);
this.add(startButton);
this.setVisible(true);
}
public static void main(String[] args) {
new Demo();
}
@Override
public void mouseClicked(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseEntered(MouseEvent e) {
startButton.setSize(400, 125);
this.repaint();
}
@Override
public void mouseExited(MouseEvent e) {
startButton.setSize(100, 25);
this.repaint();
}
}
顺便说一句,如果您不打算使用图像属性,那么确实不需要使用buffereImage
,因此只需将图像位置直接插入ImageIcon
即可删除try catch
块
new JButton(new ImageIcon("path/to/image.jpg"));
请查看这些链接,以阅读有关示例中使用的主题的更多信息
使用
MouseListener
并使用mouseenterned()
和mouseExited()
使按钮变大
声明将在其他方法中访问的变量,以便能够访问它们
import java.awt.Cursor;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.BorderFactory;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
public class Demo extends JFrame implements MouseListener {
private static final long serialVersionUID = 1L;
private JButton startButton;
public Demo() {
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setBounds(100, 100, 500, 500);
this.setLayout(null);
startButton = new JButton("Start");
startButton= new JButton(new ImageIcon("path/to/image.jpg"));
startButton.setBorder(BorderFactory.createEmptyBorder());
startButton.setContentAreaFilled(false);
startButton.setBounds(1, 2, 100, 25);
startButton.setCursor(new Cursor(Cursor.HAND_CURSOR));
startButton.addMouseListener(this);
this.add(startButton);
this.setVisible(true);
}
public static void main(String[] args) {
new Demo();
}
@Override
public void mouseClicked(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseEntered(MouseEvent e) {
startButton.setSize(400, 125);
this.repaint();
}
@Override
public void mouseExited(MouseEvent e) {
startButton.setSize(100, 25);
this.repaint();
}
}
顺便说一句,如果您不打算使用图像属性,那么确实不需要使用buffereImage
,因此只需将图像位置直接插入ImageIcon
即可删除try catch
块
new JButton(new ImageIcon("path/to/image.jpg"));
请查看这些链接,以阅读有关示例中使用的主题的更多信息
我添加了鼠标并按下按钮。设置大小(400125);但它说按钮无法解决,我认为这是因为它无法访问JButton“按钮”,但我不知道如何让公众访问它。抱歉,如果这是一个简单的修复,我对代码很陌生。我添加了鼠标并按下按钮。设置大小(400125);但它说按钮无法解决,我认为这是因为它无法访问JButton“按钮”,但我不知道如何让公众访问它。抱歉,如果这是一个简单的修复,我对代码还很陌生