java实现在一个类中放置监听器,在另一个类中事件

时间:2021-05-19 22:37:20

为了帮助网友解决“java怎么实现在一个类中放置监听器,而”相关的问题,中国学网通过互联网对“java怎么实现在一个类中放置监听器,而”相关的解决方案进行了整理,用户详细问题包括:RT,我想知道:java怎么实现在一个类中放置监听器,而在另一个类中事件呢?,具体解决方案如下:

解决方案1:

在A类中new一个B类...在给A类的按钮添加监听时...添加的是B类的监听...
例如:(简写,希望看得懂)
class A extends JFrame
{
public A()

{

X = new B();
…… //省略,假设这里new了各种组件

A的某个组件.addActionListener(X); //给组件添加B的监听,这样这个组件在触发某个事件时,就可以调用B类中的事件了

}

}

class B implements ActionListener
{
public void actionPerformed(ActionEvent e) 
{
…… //这是写触发时说要做的事...当A中添加了B类监听的组件相应触发事件时,就会自动调用这里了

}
}

总而言之,就是当你想使用某个类(B)作为对于触发事件的处理时,就让这个类(B)去implements监听,然后在你需要的组件上添加对B的监听(组件.addXXXListener(X))就可以了...
addXXXListener(?),这个函数在触发了事件时,会自动去找?类中相应的方法去处理事件...

解决方案2:

//这是A类

import java.awt.FlowLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;

public class MyFrame extends JFrame {
private JButton addButton;
private JTextField resultText;

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

public MyFrame() {
setSize(400, 300);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setLayout(new FlowLayout());
resultText = new JTextField(20);
addButton = new JButton("+1");
addButton.addActionListener(new AddButtonAction(resultText));
add(resultText);
add(addButton);
setVisible(true);
}
}
//这是B类
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JTextField;

public class AddButtonAction implements ActionListener {
private JTextField resultText;

public AddButtonAction(JTextField resultText) {
this.resultText = resultText;
}

public void actionPerformed(ActionEvent e) {
try {
int value = Integer.parseInt(resultText.getText());
resultText.setText(String.valueOf(value + 1));
} catch (NumberFormatException ne) {
resultText.setText("your input string is not a number!");
}
}
}...余下全文>>

 

通过对数据库的索引,我们还为您准备了:

java怎么实现在一个类中放置监听器,而在另一个类... 

问:比如说我定义了两个类,a和b类,我在a类当中写窗体、组件、监听器等,在...

答:其实,和一个类内,差别不是太大,最大的区别是另一个类的实例化。 class B { public ActionListener buttonClick = new ActionListener(){ public void actionPerformed(ActionEvent e) { // do something } }; } class A { JButton jb = new J...

===========================================

 

如何写一个java监听器 监听某个java类的方法是否被... 

问:比如说我定义了两个类,a和b类,我在a类当中写窗体、组件、监听器等,在...

答:如果被调用方法的类是你自己写的,最简单正如其他人说的自己加个通知监听的代码就ok了 如果不是自己写的而又不是final类的话,你就继承他,实现所有方法 在方法中通知监听,然后调用父类的方法就ok啦 写个监听类: class Monitor extends Thread ...

===========================================

 

java怎么实现在一个组件中放置监听器,而在另一个组... 

问:我现在有一个文本框textfield,有一个button,我想在textfield摁下enter键...

答:代码贴一下,你用什么做的?swing?applet?还是JSP页面啊?

===========================================

 

java如何将多个类的时间监听代码放在同一个类中 

问:java如何将多个注册类的事件监听代码放在一个类control中处理

答:让该类实现不同的监听器接口并实现这复数个接口内的复数个方法 然后把该类作为监听器add到各个不同的组件中

===========================================

 

Myeclipse Java Swing,在一个类中声明了一个监听器... 

问:public class Listener{ ActionListener ExitListener=new ActionListen...

答:看着功能,是监听是否退出。可以用在退出按钮上,或者 右上角的关闭。在相应的控件上,用addListener(new Listener());

===========================================

 

MyEclipse Java Swing中在一个类中定义了一个监听... 

问:public class Listener extends JMenuItem{ public void ExitListener()...

答:你定义的是个Menuitem吧,不是个Listener吧。 -------------------------------------------------------------------------------------------------------------- java.lang.Object extended by java.awt.Component extended by java.awt.Cont...

===========================================

 

java的监听器问题我总是不懂,java一共有多少种监... 

问:package huatuban; import javax.swing.JFrame; import javax.swing.JPa...

答:监听器无非是别人制定好的借口,你可以new 一个,也可以用implements实现借口,自定义监听。 至于监听器的种类,就是一些诸如长按、短按、按几次等等的,这都是次要的。我们并不需要关心这些,重要的是怎么写监听操作。

===========================================

 

java,当从一个界面跳到新界面后,在新界面中监听... 

问:高手求救啊,panel1上有一个按钮,按了它之后要在panel2上画出一个strin...

答:如果是新界面监听自己,那方法就和在旧界面中加监听器的方法是一样的啊... 例如: class A extends JPanel implements ActionListener //这是新界面的类 { …… public void actionPerformed(ActionEvent arg0) //监听函数 { …… } } 如果是旧界面...

===========================================