Java 从jtextarea获取文本拆分它并将其传递给新行上的jlabel?
嗨,朋友,我是新来的,我在两个类中编写了一个代码,其中一个类中,我声明了一个jtextarea和一个按钮,当我们单击按钮时,文本将拆分,并显示在jlabel中,但问题是,文本在jtextarea中编写,按钮也在工作,但当jlabel框架打开时,它在这里没有显示我的代码 头等舱Java 从jtextarea获取文本拆分它并将其传递给新行上的jlabel?,java,user-interface,Java,User Interface,嗨,朋友,我是新来的,我在两个类中编写了一个代码,其中一个类中,我声明了一个jtextarea和一个按钮,当我们单击按钮时,文本将拆分,并显示在jlabel中,但问题是,文本在jtextarea中编写,按钮也在工作,但当jlabel框架打开时,它在这里没有显示我的代码 头等舱 import java.awt.Container; import java.awt.Dimension; import java.awt.FlowLayout; import java.awt.Font; import
import java.awt.Container;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextArea;
public class Try extends JFrame {
JTextArea text;
String string;
public Try(){
super("survey");
Container container=getContentPane();
container.setLayout(new FlowLayout());
text=new JTextArea();
text.setLineWrap(true);
text.setWrapStyleWord(true);
text.setPreferredSize(new Dimension(350,150));
string=text.getText();
JButton showDialogBtn = new JButton("Add Text");
container.add(text);
container.add( showDialogBtn);
showDialogBtn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
jlabel l=new jlabel();
l.setSize(700,700);
l.setVisible(true);
}
});
}
public static void main(String[] args) {
// TODO code application logic here
Try t=new Try();
t.setSize(400,500);
t.setVisible(true);
}
String getArray()
{
return string ;
}
}
但是第二个类,即jlabel类,在这方面没有显示所需的结果plz帮助
import java.awt.Container;
import java.awt.Font;
import javax.swing.*;
class jlabel extends JFrame {
Try t=new Try();
public jlabel(){
JFrame frame=new JFrame("jlabel");
JPanel jp1=new JPanel();
String string=t.getArray();
String[] labelStrings = string.split(" \\s*");
for (String labelString : labelStrings)
{
// create JLabels and add
JLabel label = new JLabel(labelString);
jp1.add(label);
frame.add(jp1);
}
}
}
等待回复,提前感谢
关于,问题是在actionPerformed()方法之外调用getText()。此方法在按下按钮时运行,因此如果要获取文本,则应在actionPerformed()中调用方法getText()
你的代码一运行就会得到文本,而它所能找到的只是一无所有!因此,这就是粘贴到JLabel中的内容。问题是在actionPerformed()方法之外调用getText()。此方法在按下按钮时运行,因此如果要获取文本,则应在actionPerformed()中调用方法getText()
你的代码一运行就会得到文本,而它所能找到的只是一无所有!因此,这就是粘贴到JLabel中的内容。第一个类很不错,但是“JLabel”类有很多bug。请看下面的一个工作 jlabel类中的问题摘要:
- 实例化了另一个Try对象,并使用了此实例
- 您正在创建一个新的JFrame,尽管您已经在子类化它
- 没有布局管理器
import javax.swing.BoxLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
class Label extends JFrame {
public Label(String string) {
super("jlabel");
JPanel jp1 = new JPanel();
jp1.setLayout(new BoxLayout(jp1, BoxLayout.Y_AXIS));
String[] labelStrings = string.split(" \\s*");
for (String labelString : labelStrings) {
// create JLabels and add
JLabel label = new JLabel(labelString);
jp1.add(label);
}
getContentPane().add(jp1);
}
}
在Try类中,按以下方式初始化它:
Label l = new Label(text.getText());
第一个类很不错,但是“jLabel”类有很多bug。请看下面的一个工作 jlabel类中的问题摘要:
- 实例化了另一个Try对象,并使用了此实例
- 您正在创建一个新的JFrame,尽管您已经在子类化它
- 没有布局管理器
import javax.swing.BoxLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
class Label extends JFrame {
public Label(String string) {
super("jlabel");
JPanel jp1 = new JPanel();
jp1.setLayout(new BoxLayout(jp1, BoxLayout.Y_AXIS));
String[] labelStrings = string.split(" \\s*");
for (String labelString : labelStrings) {
// create JLabels and add
JLabel label = new JLabel(labelString);
jp1.add(label);
}
getContentPane().add(jp1);
}
}
在Try类中,按以下方式初始化它:
Label l = new Label(text.getText());
我不明白你的意思。你能澄清你的问题吗?(代码应该做什么?)是的,有一点,我在做iti,我听不懂你说的。你能澄清你的问题吗?(代码应该做什么?)是的,有一点,我正在做。是的,我没有得到要求的结果,现在我修改了代码。是的,我没有得到要求的结果,现在我修改了代码