Java 我创建了一个私有类;PathakP“;但我发现PathakP无法解析为类型
我试图用Jbutton创建一个对话框,但当我向其中添加actionListener并将我为实现actionListener而创建的类传递给按钮时,我得到了“PathakP(类名)无法解析为类型” 我使用的代码是Java 我创建了一个私有类;PathakP“;但我发现PathakP无法解析为类型,java,swing,Java,Swing,我试图用Jbutton创建一个对话框,但当我向其中添加actionListener并将我为实现actionListener而创建的类传递给按钮时,我得到了“PathakP(类名)无法解析为类型” 我使用的代码是 import java.awt.*; import javax.swing.*; import java.awt.event.*; public class GUI1 extends JFrame { private JTextField J;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class GUI1 extends JFrame {
private JTextField J;
private Font pf,bf,itf,bif;
private JRadioButton pb,bb,ib,bib;
private ButtonGroup B;
private JButton ab;
public GUI1(){
super("To check the Font styles" );
setLayout(new FlowLayout());
J=new JTextField("This is the Text who's Font will be Changed pahtak is with me ",40);
add(J);
pb=new JRadioButton("Plain Button",true);
bb=new JRadioButton("Bold Button",false);
bib=new JRadioButton("Bold & Italic Button",false);
ib=new JRadioButton("Italic Button",false);
ab=new JButton("PathakButton");
add(ab);
add(pb);
add(bb);
add(bib);
add(ib);
B=new ButtonGroup();
B.add(pb);
B.add(bb);
B.add(bib);
B.add(ib);
pf=new Font("Serif",Font.PLAIN,15);
bf=new Font("Serif",Font.BOLD,15);
itf=new Font("Serif",Font.ITALIC,15);
bif=new Font("Serif",Font.BOLD+Font.ITALIC,16);
J.setFont(pf);
pb.addItemListener(new HandlerClass(pf));
bb.addItemListener(new HandlerClass(bf));
bib.addItemListener(new HandlerClass(bif));
ib.addItemListener(new HandlerClass(itf));
ab.addActionListener(new PathakP());
}
private class HandlerClass implements ItemListener{
private Font font;
public HandlerClass(Font f){
font=f;
}
public void itemStateChanged(ItemEvent e) {
// TODO Auto-generated method stub
J.setFont(font);
}
private class PathakP implements ActionListener{
public void actionPerformed(ActionEvent ae) {
JOptionPane.showMessageDialog(null, "This is just JOptionPane example");
}
}
}
}
主类
import javax.swing.*;
public class Apples {
public static void main(String[] args) {
GUI1 G=new GUI1();
G.setVisible(true);
G.setSize(500,250);
G.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
我认为主课堂没有任何错误
我可以通过在外部创建另一个类来解决此错误,但我想知道为什么它不接受我创建的类并在其中显示未使用的类您的
PathakP
写在HandlerClass
中。您有两个解决方案(在纠正了括号问题之后)
- 或者将其写入
中,由于您是从构造函数调用它,因此它将绑定到GUI
GUI
- 或者,如果要将其保存在
中,则需要将其绑定到HandlerClass
的实例:HandlerClass
ab.addActionListener(new HandlerClass().new PathakP())