实现这样一个功能很简单,我们可以把它封装到一个类中,如果我们想把一个带图标的JLabel做成一个超链接效果,就可以给JLabel组件增加鼠标事件,来调用我们下边的代码,打开系统的默认浏览器。
自己先封装一个打开浏览器的类:
package com.feng.logon;
import java.awt.Cursor;
import java.awt.Desktop;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URISyntaxException;
import javax.swing.JLabel;
/** *//**
*
* @author Anthrax
*此类负责检测系统的默认浏览器等程序,并负责启动它们
* @netSite 指定要显示的网址
*/
public class RunBrowser{
private Desktop desktop;
private URI uri;
private String netSite;
private Cursor hander;
/** *//** Creates a new instance of DesktopRuner */
public RunBrowser(){
this.desktop = Desktop.getDesktop();
}
/**//*
*检测系统是否支持浏览器
*/
public boolean checkBroswer(){
if(desktop.isDesktopSupported() && desktop.isSupported(Desktop.Action.BROWSE)){
return true;
}
else{
return false;
}
}
/**//*
*运行默认浏览器,并在其中显示指定网址
*/
public void runBroswer(){
netSite = "http://www.baidu.com";
try {
uri = new URI(netSite);
} catch (URISyntaxException ex){
ex.printStackTrace();
}
try{
desktop.browse(uri);
} catch (IOException ex){
ex.printStackTrace();
}
}
/**//*
*改变鼠标形状
*/
public void changeMouse(JLabel label){
hander = new Cursor(Cursor.HAND_CURSOR);
label.setCursor(hander);
}
}
假如有这样一个JLabel,就可以给这个JLabel加超链接了
JLabel jl=new JLabel("申请帐号");
LLogon.setCursor(new Cursor(Cursor.HAND_CURSOR));//这样也可以改变鼠标形状
LLogon.addMouseListener(new MouseAdapter(){
public void mouseClicked(MouseEvent e){
try{
new RunBrowser().runBroswer();
}catch(Exception ex){
ex.printStackTrace();
}
}
});
注意上面的红色代码是调用的部分...一般放在构造函数里
相关推荐
在Java的Swing库中创建GUI应用程序时,有时我们需要在窗口上添加超链接,以便用户可以点击并跳转到特定的网页。这个“Java在Swing窗口上实现文字超链接.rar”文件提供了一个示例,展示了如何在Swing组件中实现这种...
在JavaSE中,如果我们想要在JLabel中实现超链接效果,即点击文本后能够触发特定的动作,如打开一个网页,可以通过自定义组件或扩展JLabel来实现。 首先,我们来看`JLabelLink.java`这个文件,这很可能是自定义的一...
这篇博客文章(https://lazycat774880994.iteye.com/blog/567412)很可能详细讲解了如何在Swing应用中集成超链接,并且可能涉及到JDK默认提供的`javax.swing.JLabel`和第三方库JDIC的使用。 `javax.swing.JLabel`是...
### 基于Java Swing的超链接标签与按钮实现 #### 概述 在Java Swing框架下,我们经常需要在用户界面中嵌入超链接功能,以提供更加丰富的交互体验。例如,在`JTable`(一种用于显示表格数据的组件)中添加超链接...
标题"含有可链接标签的Swing气泡"暗示了一个定制的Swing组件,这个组件不仅包含了标准的JLabel的功能,还添加了点击事件监听,使得标签内的文本可以像网页中的超链接一样被点击,触发预设的事件或动作。气泡通常指的...
- Swing邮件客户端允许用户编辑HTML邮件,这意味着需要支持插入图片、超链接、字体样式等功能。 6. **安全性和加密**: - SSL/TLS加密:为了保护用户的隐私,SMTP连接通常使用SSL或TLS进行加密,确保数据传输的...
在Java编程中,"标签"通常指的是用户界面(UI)组件,如Swing或JavaFX中的JLabel,它们用于展示文本或图像信息。本篇博客将深入探讨如何在Java中创建和使用这些标签,以及相关的工具和技术。 首先,Java Swing是...
JLabel searchLabel = new JLabel("Search:"); JTextField searchField = new JTextField(""); details.add(searchLabel); details.add(searchField); container.add(details); } JXTaskPaneContainer ...
`JLabel`是Swing库中用于显示文本或图像的组件。下面是一个`JLabel`使用示例: ```java import javax.swing.*; import java.awt.*; public class JLabelDemo { JFrame mainFrame; JLabel simpleLabel; public ...
- `javax.swing.event.HyperlinkEvent` 和 `HyperlinkListener` 用于处理超链接事件。 - `java.io` 和 `java.net` 用于处理网络通信和I/O操作。 ##### 2. 主类定义 ```java public class brower extends JFrame ...
- **JLabel**, **JButton**, **JTextField**:这些都是Swing的基本UI组件,分别用于显示文本、按钮和文本输入字段。 - **JMenuBar**, **JMenu**, **JMenuItem**:这些组件用于创建菜单栏和菜单项。 - **JScrollPane*...
Java Swing提供了一系列组件(如JButton、JLabel、JTabbedPane等),允许开发者创建丰富的交互式界面。通过添加监听器和事件处理器,可以实现用户与界面的互动,例如点击按钮打开新网页、选择收藏夹等。 为了实现在...
例如,Swing扩展了AWT的组件,提供了如JButton、JLabel、JTextArea等更加强大和可定制的组件。Swing还引入了抽象类,如AbstractButton,作为按钮类的基础,允许更多的自定义和扩展。 设计GUI时,首先要选择合适的...
- `JLabel`, `JTextField`, `JButton`, `JPanel`等组件用于构建用户交互界面。 - `BorderLayout`布局管理器被用来组织窗口内的各个组件。 2. **网页加载与显示**: - `JEditorPane`组件用于显示HTML内容。 - ...
文本显示可以利用Java的Swing或AWT库中的组件,如`JLabel`或`JTextArea`,而音乐播放可能需要利用Java的`javax.sound`包来处理音频资源。 以下是一个简单的Applet代码示例,展示了如何在Applet中显示文本: ```...
尽管Swing提供了许多预定义的组件,如JButton、JLabel等,但在这里我们选择不使用它们,而是基于AWT的Component类自定义组件。Component类是所有GUI组件的基类,它包含了基本的事件处理和绘图方法。 在描述中提到的...
3. `<a>`:定义超链接。 4. `<img>`:插入图片。 5. `<ul>`和`<ol>`:定义无序列表和有序列表。 6. `<li>`:定义列表项。 7. `<div>`:定义文档中的分区或容器。 8. `<span>`:定义文档中的一个短语或单词。 9. `...
Java Swing 是用于构建用户界面的主要工具,它提供了丰富的组件库,如 JTabbedPane 用于实现多页面浏览,JList 可以用于展示浏览历史,JButton 和 JLabel 结合监听器和事件处理可以实现超链接的响应。Swing 的可扩展...
Swing提供了一系列组件(JFrame, JButton, JLabel, JTabbedPane等),允许开发者创建具有丰富交互性的图形用户界面。在浏览器设计中,开发者需要利用这些组件构建浏览窗口、地址栏、书签栏等,并添加事件监听器以...
- `JFrame`:这是Java Swing中的顶级容器,用于创建窗口。在`WebsiteBrowser`类中,它是整个应用程序的基础框架。 - `JPanel`:用于在窗口中添加组件,`contentPane`在这里是主面板,可能承载着浏览器的主要内容。...