Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 当鼠标悬停在按钮上时,我想放大它_Java_Eclipse_Image_Button_Jbutton - Fatal编程技术网

Java 当鼠标悬停在按钮上时,我想放大它

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;

我一辈子都搞不懂这个。我希望鼠标悬停在菜单中的“开始”按钮上,将其放大50-100px。有什么方法可以做到这一点,可以在这里使用我的代码? 提前谢谢!“我正在使用JavaEclipseBTW”不知道这是否有帮助

//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“按钮”,但我不知道如何让公众访问它。抱歉,如果这是一个简单的修复,我对代码还很陌生