导航:首页 > 编程语言 > javaactionlistener

javaactionlistener

发布时间:2025-07-20 00:18:09

1. java中关于addActionListener的问题

这里的this 指的是你的方法或成员或操作火灾的这个类,this在这里的作用是说明,你必须在该类里面来实现ActionListener里面的actionPerformed方法,其实btnUp.addActionListener(Object t);这里的参数的意思是,这个t是哪个类的对象,那么那个类就负责来实现接口的方法,不知道你理解了没有。
import java.awt.*;
import java.awt.event.*;

public class Bnbn //implements ActionListener
{
Frame frmFrame;
Button btnUp, btnDown;
public Bnbn()
{

frmFrame = new Frame("按钮应用");
frmFrame.setLayout(new GridLayout(2,1));
ss s=new ss();//产生内部类对象作监视器
//产生按钮一
btnUp = new Button("上");
btnUp.setActionCommand("btnUp");
btnUp.addActionListener(s);
//产生按钮二
btnDown = new Button("下");
btnDown.setActionCommand("btnDown");
btnDown.addActionListener(s);
frmFrame.add(btnUp);
frmFrame.add(btnDown);
frmFrame.pack();
frmFrame.setVisible(true);
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
}
class ss implements ActionListener //创建内部类作监视器
{

public void actionPerformed(ActionEvent e)
{
String cmd = e.getActionCommand();

if ( cmd.equals("btnDown") )
{
if (btnUp.getBackground()==Color.BLUE)
{
btnUp.setBackground(Color.red);
}
else
{
btnUp.setBackground(Color.blue);
}
}
else
{
if (btnDown.getBackground()==Color.BLUE)
{
btnDown.setBackground(Color.red);
}
else
{
btnDown.setBackground(Color.blue);
}
}
}
}

public static void main(String[] args)
{
new Bnbn();
}
}

2. java中actionPerformed是什么意思啊 怎么用啊

这个是ActionListener这个接口里面的方法

用于接收操作事件的侦听器接口。对处理操作事件感兴趣的类可以实现此接口,而使用该类创建的对象可使用组件的 addActionListener 方法向该组件注册。在发生操作事件时,调用该对象的 actionPerformed 方法。

3. Java中的actionlistener是什么意思,有什么作用,详细点为好!

actionlistener字面上理解就是动作监听器。
它是一个接口,在实现此接口的类中,你可以给需要关注其动作的组件(如Button)添加监听器(addActionListener(this);),之后在事件处理方法(public void actionPerformed(ActionEvent event){})中,对每个事件进行不同处理。
给你个例子吧,是我自己写的一个记事本:
import java.io.*;
import java.awt.event.*;
import javax.swing.*;
public class MainClass extends JFrame implements ActionListener{
int width = 500,height = 400;
JPanel panel;
JMenuBar bar;
JMenu fileMenu,editMenu,helpMenu;
JMenuItem 打开O,新建N,保存S,另存A,剪切T,复制C,粘贴P,关于A;
JTextArea textArea = null;
File tempFile = null;
public MainClass(){ //构造方法
setTitle("TextEdit");
setSize(width,height);
panel = (JPanel)getContentPane();
bar = new JMenuBar();
fileMenu = new JMenu("文件F");
fileMenu.setMnemonic('F');
editMenu = new JMenu("编辑E");
editMenu.setMnemonic('E');
helpMenu = new JMenu("帮助H");
helpMenu.setMnemonic('H');
打开O = new JMenuItem("打开O");
打开O.setMnemonic('O');
新建N = new JMenuItem("新建N");
新建N.setMnemonic('N');
保存S = new JMenuItem("保存S");
保存S.setMnemonic('S');
另存A = new JMenuItem("另存A");
另存A.setMnemonic('A');
剪切T = new JMenuItem("剪切C");
剪切T.setMnemonic('t');
复制C = new JMenuItem("复制C");
复制C.setMnemonic('C');
粘贴P = new JMenuItem("粘贴P");
粘贴P.setMnemonic('P');
关于A = new JMenuItem("关于A");
关于A.setMnemonic('A');
fileMenu.add(打开O);
fileMenu.add(新建N);
fileMenu.add(保存S);
fileMenu.add(另存A);
bar.add(fileMenu);
editMenu.add(剪切T);
editMenu.add(复制C);
editMenu.add(粘贴P);
bar.add(editMenu);
helpMenu.add(关于A);
bar.add(helpMenu);
textArea = new JTextArea();
panel.add("North",bar);
panel.add("Center", textArea);
打开O.addActionListener(this);
新建N.addActionListener(this);
保存S.addActionListener(this);
另存A.addActionListener(this);
剪切T.addActionListener(this);
复制C.addActionListener(this);
粘贴P.addActionListener(this);
关于A.addActionListener(this);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
public void actionPerformed(ActionEvent event){ //处理事件
if(event.getSource() == 打开O){ //处理打开
JFileChooser jfc = new JFileChooser();
jfc.showOpenDialog(panel);
tempFile = jfc.getSelectedFile();
FileReader fis;
try {
fis = new FileReader(tempFile);
textArea.read(fis,null);
textArea.setEditable(true);
}catch(Exception ex){ex.printStackTrace();}
}
if(event.getSource() == 新建N){ //处理新建
textArea.setEditable(true);
textArea.setText(null);
}
if(event.getSource() == 保存S){ //处理保存
if(tempFile == null){
JFileChooser jfc = new JFileChooser();
jfc.showSaveDialog(panel);
tempFile = jfc.getSelectedFile();
try{
FileWriter fos = new FileWriter(tempFile);
textArea.write(fos);
}catch(Exception ex){ex.printStackTrace();}
}
else{
try{
FileWriter fos = new FileWriter(tempFile);
textArea.write(fos);
}catch(Exception ex){ex.printStackTrace();}
}
}
if(event.getSource() == 另存A){ //处理另存
JFileChooser jfc = new JFileChooser();
jfc.showSaveDialog(panel);
tempFile = jfc.getSelectedFile();
try{
FileWriter fos = new FileWriter(tempFile);
textArea.write(fos);
}catch(Exception ex){ex.printStackTrace();}
}
if(event.getSource() == 剪切T){ //处理剪切
textArea.cut();
}
if(event.getSource() == 复制C){ //处理复制
textArea.();
}
if(event.getSource() == 粘贴P){ //处理粘贴
textArea.paste();
}
if(event.getSource() == 关于A){ //处理关于
textArea.setText("Manifest-Version: 1.0\n" +
"Created-By: Libra_JL\n" +
"QQ: 254791521\n");
textArea.setEditable(false);
panel.validate();
validate();
}
}
public static void main(String []args){ //主函数
new MainClass();
}
}

阅读全文

与javaactionlistener相关的资料

热点内容
迅捷pdf虚拟打印机下载 浏览:320
电脑共用文件怎么加密码 浏览:525
查看居住证是哪个app 浏览:154
python解释器工作原理 浏览:997
idea编译时如何提高编译速度 浏览:6
安卓软件都能做什么 浏览:709
lol双线服务器什么时候开启 浏览:724
6splus如何定位服务器 浏览:558
单片机三个编译按钮 浏览:501
octopus章鱼加密狗 浏览:945
plc主程序名kz无法编译 浏览:54
提升程序员好物 浏览:971
dt3算法 浏览:74
海盗来了安卓系统商店可以买什么 浏览:161
python教程作品 浏览:682
模拟器加密狗用法 浏览:349
离线歌曲缓存文件夹 浏览:270
如何查看后端服务器代码 浏览:715
u盘文件夹选项隐藏显示灰色 浏览:908
ce源码编译不了 浏览:547