java – 如何添加jlabel图像悬停?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java – 如何添加jlabel图像悬停?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3001字,纯文字阅读大概需要5分钟。
内容图文
![java – 如何添加jlabel图像悬停?](/upload/InfoBanner/zyjiaocheng/762/375754d6c3c740fd9e143dda065174a8.jpg)
我如何继续添加JLabel悬停?就像当您将鼠标移到顶部时,JLabel a和新图像将重叠.我知道如何使用按钮,但相同的技术对JLabel不起作用.有人会指导我添加JLabel悬停吗?拜托,谢谢.
package src;
import java.awt.Dimension;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
/*
* @Author - 0x29A
*
*
*/
public class Jframe {
public static void main(final String args[]) {
/*
* @Images
*/
final ImageIcon icon = new ImageIcon("Data/button.png");
final JLabel label = new JLabel(icon);
final ImageIcon icon1 = new ImageIcon("Data/button1.png");
final JLabel label1 = new JLabel(icon1);
final ImageIcon icon2 = new ImageIcon("Data/button2.png");
final JLabel label2 = new JLabel(icon2);
final ImageIcon icon3 = new ImageIcon("Data/button3.png");
final JLabel label3 = new JLabel(icon3);
final ImageIcon icon4 = new ImageIcon("Data/button4.png");
final JLabel label4 = new JLabel(icon4);
final ImageIcon icon5 = new ImageIcon("Data/button5.png");
final JLabel label5 = new JLabel(icon5);
final ImageIcon icon6 = new ImageIcon("Data/background.png");
final JLabel label6 = new JLabel(icon6);
/*
* @Image Location
*/
label.setBounds(282, 255, 96, 96);
label1.setBounds(384, 255, 96, 96);
label2.setBounds(282, 153, 96, 96);
label3.setBounds(384, 153, 198, 96);
label4.setBounds(181, 152, 96, 96);
label5.setBounds(181, 255, 96, 96);
label6.setBounds(0, 0, 765, 503);
/*
* @Frame
*/
final JFrame frame = new JFrame("test");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setPreferredSize(new Dimension(765, 503));
frame.setLayout(null);
frame.add(label);
frame.add(label1);
frame.add(label2);
frame.add(label3);
frame.add(label4);
frame.add(label5);
frame.add(label6);
frame.pack();
frame.setResizable(false);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}
解决方法:
举个简单的例子,它使用MouseListener和MosueAdapter来监视JLabel上的mouseExited()和mouseEntered()事件,当调用这些方法中的任何一个时(即当鼠标悬停在标签上时),图片就会改变:
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.event.MouseAdapter;
import javax.swing.*;
public class LabelHoverTest extends JFrame {
Icon pic1;
Icon pic2;
JLabel label;
public LabelHoverTest(String title) {
super(title);
pic1 = UIManager.getIcon("OptionPane.informationIcon");
pic2 = UIManager.getIcon("OptionPane.questionIcon");
createAndShowUI();
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
new LabelHoverTest("Label Hover Test").setVisible(true);
}
});
}
private void createAndShowUI() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
addComponentsToPane(getContentPane());
setSize(300, 300);
setLocationRelativeTo(null);
setVisible(true);
}
private void addComponentsToPane(Container contentPane) {
label = new JLabel(pic1);
contentPane.add(label, BorderLayout.CENTER);
label.addMouseListener(new MouseAdapter() {
@Override
public void mouseEntered(java.awt.event.MouseEvent evt) {
label.setIcon(pic2);
}
@Override
public void mouseExited(java.awt.event.MouseEvent evt) {
label.setIcon(pic1);
}
});
}
}
内容总结
以上是互联网集市为您收集整理的java – 如何添加jlabel图像悬停?全部内容,希望文章能够帮你解决java – 如何添加jlabel图像悬停?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。
来源:【匿名】