我有很多面板。第一个包含一个JTextField,用于获取玩家的用户名
public class FirstPanel extends JPanel {
public static final JTextField usernameText = new JTextField(30);
public FirstPanel() {
this.setBackground(Color.GREEN);
JLabel enterName = new JLabel("ENTER YOUR NAME");
this.add(enterName);
this.add(usernameText);
usernameText.addActionListener(e ->
{
if (isThereUsername()) ;
CardLAyout.cl.show(CardLAyout.panelCont, "2");
});
当您输入文本时,您将被重定向到另一个面板,我想在其中显示以下消息“Hello*由于JTextfield从第一个面板获得的用户名”,让我们玩一个游戏。
我在第二个JPanel的类中编写了以下代码(ifThereUsername函数只是用来表示是否有文本)。但是,用户名没有显示,我只是阅读了消息的其余部分
if (FirstPanel.isThereUsername()) {
hello = new JLabel("HELLO " + FirstPanel.getUsername() + "\n LET'S START THE GAME RIGHT NOW ! ");
this.add(hello);
} else {
hello = new JLabel("HELLO \n let's start the game !");
this.add(hello);
}
字体getUsername在第一个面板中
public static String getUsername(){
return usernameText.getText();
}
我真的很难将它们之间的类连接起来。起初,我在同一个类中编写了所有的JPanel,但它非常混乱。所以我使用静态方法
不建议静态访问...
允许第一个面板访问第二个面板(或相反)
在FirstPanel中,介绍所需的构造函数,并记住字段中对第二个Panel的引用
在addActionListener实现中调用secondPanel。setUserName();
public FirstPanel() {
private SecondPanel secondPanel;
FirstPanel(SecondPanel secondPanel) {
secondPanel = secondPanel;
}
}
在您的代码中的某个地方:新的第一面板(第二面板);
我创建了两个类:和。下面是进行计算的方法: 这里是一个调用并显示结果的函数,不幸的是,我无法根据这本书要求它运行的方式来运行它。 任何提示都会帮助我在我的再教育过程中。
问题内容: 我最近从使用PHP切换到Java,并进行了查询。想强调一下我是Java的初学者。 本质上,我正在使用文件A(具有类A),并且想要引用保存在文件B(类B)中的静态方法。使用A类时是否需要参考文件B?(我正在考虑使用PHP中的require_once)我在A类中的代码如下: Eclipse无法将B识别为类。我是否需要创建B的实例才能访问静态方法。觉得我真的忽略了某些东西,希望您能提出任何建
问题内容: 如何从该类的静态方法获取该类的名称。例如 为了把它放在上下文中,我实际上想返回类名,作为异常中消息的一部分。 问题答案: 为了支持正确的重构(重命名类),则应使用以下任一方法: 或(感谢):
我想在另一个类中使用那个擦除方法,但由于它看起来不是静态的,所以我不能这样做 那么我如何访问那个方法呢?
问题内容: 我试图创建Hibernate Validator bean,并遇到从另一个类中的静态工厂方法创建bean的问题。我找到了一种初始化我的Validator bean的Spring方法(底部是解决方案),但是问题本身仍然没有解决。验证器在此处用作示例案例。 这就是我用Java创建Validator实例的方式 这就是我尝试在applicationContext.xml中创建bean的方式 我
我有以下类(请注意,方法是静态的): 当我打电话的时候: 我想得到输出: