[英]Issues displaying data from a class in a jTextArea in a different class
我一直在仔细地浏览本网站,试图找到问题的答案,但是我一直没能在任何地方找到它。 我是Java的新手,所以如果我使用了错误的术语,请多多包涵。
我有两个文件,MainJFrame和Class1。 我需要使用给定的Display()方法在MainJFrame的jTextArea中显示Class1的参数。 这听起来很简单,因为我应该能够从MainJFrame调用Class1的Display()方法(在MainJFrame中建立Class1的实例之后)并以这种方式显示它,但是问题是给定的Display()方法无效功能。 这是给定的代码:
public void Display(JList list)
{
DefaultListModel model = new DefaultListModel();
model.add(0, item1 + " " + item2 + " " + item3);
list.setModel(model);
}
有什么方法可以提取此信息,以便我可以在MainJFrame中使用它,而不必求助于将其保存到文件或修改代码? 从我经验不足的角度来看,这似乎是不可能的,并且每次我尝试修改此代码以例如将String返回MainJFrame时,它都被我的老师拒绝。 我的想法真的耗尽了。
感谢您的投入。
但是问题是给定的Display()方法是一个无效函数
返回空没有问题。 由于JTextArea
是可变的,而Java是按值传递,因此您可以从MainFrame
类中简单地执行以下操作:
JTextArea textArea = new JTextArea(5, 30);
Class1 class1 = new Class1();
class1.display(textArea);
getContentPane().add(new JScrollPane(textArea));
并且class1
将负责根据需要设置文本。 例如:
public void display(JTextArea textArea){
textArea.setText("I'm setting text from a Class1's object!");
}
我认为您的教练正在试图强调,这样做不需要返回任何值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.