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

如何实现让Java Label控件触发事件,第1张

之前远标老师教过,你看下下面写的行不行

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)

}

}

实现MouseListener接口.\x0d\x0a新增一个专门的"鼠标监听器"类,或者直接在你现有的类中实现"鼠标监听器".具体做法是在类声明语句中implements MouseListener.如下:\x0d\x0apublic class MouseAdp implements MouseListener{\x0d\x0a\x0d\x0apublic MouseAdp(){}\x0d\x0a\x0d\x0apublic void mouseClicked(MouseEvent e) {\x0d\x0a/**鼠标点击事件(包括按下和d起两个动作)处理方法.**/\x0d\x0aSystem.out.println("你点了我!")\x0d\x0a}\x0d\x0a\x0d\x0apublic void mouseEntered(MouseEvent e) {\x0d\x0a/**鼠标移到组件上方法时事件处理方法.**/}\x0d\x0a\x0d\x0apublic void mouseExited(MouseEvent e) {\x0d\x0a/**鼠标移开组件时事件处理方法.**/}\x0d\x0a\x0d\x0apublic void mousePressed(MouseEvent e) {\x0d\x0a/**鼠标在组件上按下(但没d起)时事件处理方法.**/}\x0d\x0a\x0d\x0apublic void mouseReleased(MouseEvent e) {\x0d\x0a/**鼠标在组件上d起事件处理方法.**/}\x0d\x0a\x0d\x0a}\x0d\x0a\x0d\x0a然后在你的JLabel实例上,作用这个监听器,如:\x0d\x0aJLabel lab = new JLabel("点我")\x0d\x0alab.addMouseListener(new MouseAdp())

1、LEFT、RIGHT、CENTER、LEADING 、TRAILING等参数表示label中内容对齐方式:左对齐、右对齐、居中、靠顶对齐、靠下对齐\x0d\x0a2、可以。 有构造函数 \x0d\x0aJLabel(Icon image) \x0d\x0aJLabel(Icon image,int horizontalAlignment)\x0d\x0aJLabel(String text,Icon image,int horizontalAlignment) \x0d\x0a参数说明:\x0d\x0aString text:标签中显示文字\x0d\x0a \x0d\x0aIcon image: 图片对象,需要使用ImageIcon子对象创建, Icon image=new ImageIcon(String filename)filename:图片本地路径\x0d\x0a \x0d\x0ahorizontalAlignment:对齐方式,就是1中的那些常量


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11264170.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-14
下一篇2023-05-14

发表评论

登录后才能评论

评论列表(0条)

    保存