首页 > 其他分享 >awc/swing实现超链接的自定义控件

awc/swing实现超链接的自定义控件

时间:2023-01-04 17:11:21浏览次数:52  
标签:控件 自定义 isSupported text setText void 超链接 new public

1、awc/swing实现超链接的自定义控件

public class HFLinkLabel extends JLabel {
	
	private static final long serialVersionUID = -4533897048399372238L;
	public String text, url;
	private boolean isSupported;
	public HFLinkLabel() {
		
	}
	public HFLinkLabel(String text, String url) {
		this.text = text;
		this.url = url;
		try {
			this.isSupported = Desktop.isDesktopSupported()
			&& Desktop.getDesktop().isSupported(Desktop.Action.BROWSE);
		} catch (Exception e) {
			this.isSupported = false;
		}
		setText(false);
		addMouseListener(new MouseAdapter() {
			public void mouseEntered(MouseEvent e) {
				setText(isSupported);
				if (isSupported)
				setCursor(new Cursor(Cursor.HAND_CURSOR));
			}
			public void mouseExited(MouseEvent e) {
				setText(false);
			}
			public void mouseClicked(MouseEvent e) {
				try {
					Desktop.getDesktop().browse(
					new java.net.URI(HFLinkLabel.this.url));
				}catch (Exception ex) {
				}
			}
		});
	}
	public void setText(boolean b) {
		if (!b) {
			setText("<html><font color=blue><u>" + text);
		}else {
			setText("<html><font color=red><u>" + text);
		}
	}
	
	public void setLinkText(String text,boolean b) {
		if (!b) {
			setText("<html><font color=blue><u>" + text);
		}else {
			setText("<html><font color=red><u>" + text);
		}
	}
	
	public static void main(String[] args) {
		JFrame jf = new JFrame("一个超链接实现的例子");
		JPanel jp = new JPanel();
		jp.add(new HFLinkLabel("访问eRedLab", "http://hi.baidu.com/eRedLab"));
		jf.setContentPane(jp);
		jf.pack();
		jf.setVisible(true);
	}
	
}

  

标签:控件,自定义,isSupported,text,setText,void,超链接,new,public
From: https://www.cnblogs.com/wwssgg/p/17025446.html

相关文章

  • 云redis自定义参数
    云redis自定义参数自定义的参数支持组合排列定义 参数说明支持版本disable-command-list设置禁用命令,用户可根据实际业务需要关闭某些时间复杂度高或危险程......
  • 自定义事件
    dom自定义事件//事件监听document.addEventListener('drag:start',function(ev){console.log(ev.target)})//触发事件constdom=document.getElementById("......
  • GridView 自定义简单操作
    usingSystem;usingSystem.Data;usingSystem.Configuration;usingSystem.Collections;usingSystem.Web;usingSystem.Web.Security;usingSy......
  • 帆软报表-超链接
    基础设置  1. 超级链接设置 选中要设置的单元格,右击选择超级链接,弹出超级链接窗口,可以对单元格添加超级链接,如下图:  1.1 设置超级链接的效果 如某个单......
  • app直播源代码,vue 自定义指令过滤特殊字符
    app直播源代码,vue自定义指令过滤特殊字符 /** *@tagsinput只可以輸入数字、字母、汉字 *@examplev-emoji */exportdefault(app)=>{ app.directive('emoj......
  • 在线编辑Word——插入内容控件
    内容控件是可添加和自定义的以在模板、窗体和文档中使用的单个控件。Word中支持添加多种类型的控件用于不同文档的设计需求。本文,将通过在线编辑的方式展示如何在Word中插入......
  • Java 在PPT中添加文本、图片超链接
    本文介绍通过Java程序在PPT幻灯片中添加超链接的方法,可以给文本或者图片设置超链接,设置超链接时,可设置包括网页链接、邮件地址链接、幻灯片跳转链接等不同指向对象的链接。......
  • pillow 创建图片并添加一些自定义信息
    fromPILimportImagevm=Image.new('RGBA',(dshape[1],dshape[0]))vm=Image.fromarray(np.array(ssddff,dtype=np.uint8))fromPIL.PngImageP......
  • HidController控件下载安装
    用Delphi或C++开发USB接口时要用到的HidController控件,如果你找不到去哪下载参考这里。下载地址:https://sourceforge.net/projects/jvcl/下载后解压里面两个文件夹......
  • Spring IOC官方文档学习笔记(六)之自定义bean的特性
    1.生命周期回调(1)如果我们想要介入bean的生命周期,可通过实现spring中的InitializingBean和DisposableBean接口来达到这一目的,spring会调用InitializingBean中的afterPro......