当我使用 intellij 设计 Java 表单时,它只声明私有(private)组件,例如
Private JPanel myPanel;
但是我如何从我的类源文件中访问这个对象。例如。当我想向 myPanel 添加 JButton 时?
我知道我可以为 myPanel 编写一个 getter,但是我该如何访问它呢?
最佳答案
让我通过更改按钮文本来解释我的解决方案。
- 在 intellij GUI Designer 中创建按钮
- 为其添加 getter 方法(转到源代码,手动编写 getter 或让 intellij 为您完成)
- 现在您可以使用 getter 方法来访问对象方法。
示例:单击时更改 GUI 设计者创建的按钮的按钮文本:
import javax.swing.*;
import java.awt.event.*;
public class TestForm {
private JButton button1;
private JPanel panel1;
public TestForm() {
getButton1().addActionListener(new clickListener());
}
public JButton getButton1() {
return button1;
}
public static void main(String[] args) {
JFrame frame = new JFrame("TestForm");
frame.setContentPane(new TestForm().panel1);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
}
public void changeTextOnButton(){
getButton1().setText("gwerz");
}
public class clickListener implements ActionListener{
public void actionPerformed(ActionEvent e){
if (getButton1().getText().equals("Button")){
getButton1().setText("Dgsdg");
}
else {
getButton1().setText("Button");
}
}
}
}
关于java - 访问 Intellij Form Designer 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20817595/