단추로 된 텍스트 상자와 플래그로 명명 된 JLabel
이있는 스윙 창이 있습니다. 버튼을 클릭 한 후 입력에 따라 라벨이 플래그에서 값으로 변경되어야합니다.실행중인 응용 프로그램에서 Swing JLabel 텍스트 변경
동일한 창에서이를 수행하는 방법은 무엇입니까?
단추로 된 텍스트 상자와 플래그로 명명 된 JLabel
이있는 스윙 창이 있습니다. 버튼을 클릭 한 후 입력에 따라 라벨이 플래그에서 값으로 변경되어야합니다.실행중인 응용 프로그램에서 Swing JLabel 텍스트 변경
동일한 창에서이를 수행하는 방법은 무엇입니까?
import java.awt.*;
import javax.swing.*;
import javax.swing.border.*;
import java.awt.event.*;
public class Test extends JFrame implements ActionListener
{
private JLabel label;
private JTextField field;
public Test()
{
super("The title");
setDefaultCloseOperation(EXIT_ON_CLOSE);
setPreferredSize(new Dimension(400, 90));
((JPanel) getContentPane()).setBorder(new EmptyBorder(13, 13, 13, 13));
setLayout(new FlowLayout());
JButton btn = new JButton("Change");
btn.setActionCommand("myButton");
btn.addActionListener(this);
label = new JLabel("flag");
field = new JTextField(5);
add(field);
add(btn);
add(label);
pack();
setLocationRelativeTo(null);
setVisible(true);
setResizable(false);
}
public void actionPerformed(ActionEvent e)
{
if(e.getActionCommand().equals("myButton"))
{
label.setText(field.getText());
}
}
public static void main(String[] args)
{
new Test();
}
}
다른 클래스에서'Test'의 객체를'Test t = new Test(); t.getLabel(). setText ("라벨 텍스트 변경");'. 레이블 (getLabel())에 getters-setters를 만들었습니까? –
실용적인 작품! 내가 10 회 upvote 수 있으면 좋겠다. –
표시되는 텍스트를 동적으로 변경하려면 JLabel
의 setText(str)
방법을 사용하십시오. 버튼의 actionPerform에서이 쓰기 :
jLabel.setText("new Value");
간단한 데모 코드는 다음과 같습니다 편리 다시
JFrame frame = new JFrame("Demo");
frame.setLayout(new BorderLayout());
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.setSize(250,100);
final JLabel label = new JLabel("flag");
JButton button = new JButton("Change flag");
button.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
label.setText("new value");
}
});
frame.add(label, BorderLayout.NORTH);
frame.add(button, BorderLayout.CENTER);
frame.setVisible(true);
어떤 API를 문서? – kleopatra