如何实现让Java Label控件触发事件

 我来答
匿名用户
2016-12-30
展开全部
之前远标老师教过,你看下下面写的行不行
1、现在我需要在一个label控件上定义一个点击事件,打开产生一个新的浏览器窗口。
2、Java JDK中的Label 类本身并不提供事件处理的方法,但应该注意到它是Component类的子类,从而可以通过如下的方法来完成,同时应该处理mouse事件较符合要求。
3、源程序的代码如下:(已经调试通过)
import java.awt.*;
import java.applet.*;
import java.awt.event.*;
import java.net.*;
public class Applet1 extends Applet implements MouseListener
{
Canvas cv;
public void init()
{
initForm();
}
private final Label clickLabel = new Label("hello");
private URL url;
public void mouseClicked(MouseEvent e)
{
try
{
if(e.getSource() == clickLabel)
{
url = new URL("http://www.yahoo.com");
getAppletContext().showDocument(url,"new");
}
}
catch(MalformedURLException exc)
{
this.showStatus("Invalid URL: " + url);
}
}
public void mousePressed(MouseEvent e)
{
}
public void mouseReleased(MouseEvent e)
{
}
public void mouseEntered(MouseEvent e)
{
}
public void mouseExited(MouseEvent e)
{
}
void initForm()
{
clickLabel.addMouseListener(this);
this.add(clickLabel);
}
}
名吻真7
2018-03-19 · TA获得超过166个赞
知道答主
回答量:140
采纳率:65%
帮助的人:10.6万
展开全部
实现MouseListener接口.
新增一个专门的"鼠标监听器"类,或者直接在你现有的类中实现"鼠标监听器".具体做法是在类声明语句中implements MouseListener.如下:
public class MouseAdp implements MouseListener{

public MouseAdp(){}

public void mouseClicked(MouseEvent e) {
/**鼠标点击事件(包括按下和弹起两个动作)处理方法.**/
System.out.println("你点了我!");
}

public void mouseEntered(MouseEvent e) {
/**鼠标移到组件上方法时事件处理方法.**/}

public void mouseExited(MouseEvent e) {
/**鼠标移开组件时事件处理方法.**/}

public void mousePressed(MouseEvent e) {
/**鼠标在组件上按下(但没弹起)时事件处理方法.**/}

public void mouseReleased(MouseEvent e) {
/**鼠标在组件上弹起事件处理方法.**/}

}

然后在你的JLabel实例上,作用这个监听器,如:
JLabel lab = new JLabel("点我");
lab.addMouseListener(new MouseAdp());
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
光子夏
2016-12-30 · 超过13用户采纳过TA的回答
知道答主
回答量:16
采纳率:0%
帮助的人:16.3万
展开全部
给Laber对象,添加事件监听器,并重写事件方法。

new JLabel().addActionListerner(public void actionPerformed(){
// 事件具体操作代码

});
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式