簡體   English   中英

如何通過代碼編輯awt文本字段

[英]how to edit awt textfield via code

我找不到如何在AWT文本框中更改文本的方法。 我已經嘗試過了:

textBox1.setText("text");
textBox1.validate();

要么

textBox1.setText("text");
textBox1.repaint();

它們都不起作用。 這可能是什么問題?

看這個例子,我如何設置文本到文本字段

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

    private Frame mainFrame;
    private Label headerLabel;
    private Label statusLabel;
    private Panel controlPanel;

    public AwtControlDemo(){
        prepareGUI();
    }

    public static void main(String[] args){
        AwtControlDemo  awtControlDemo = new AwtControlDemo();
        awtControlDemo.showTextFieldDemo();
    }

    private void prepareGUI(){
        mainFrame = new Frame("Java AWT Examples");
        mainFrame.setSize(400,400);
        mainFrame.setLayout(new GridLayout(3, 1));
        mainFrame.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent windowEvent){
                System.exit(0);
            }        
        });    
        headerLabel = new Label();
        headerLabel.setAlignment(Label.CENTER);
        statusLabel = new Label();        
        statusLabel.setAlignment(Label.CENTER);
        statusLabel.setSize(350,100);

        controlPanel = new Panel();
        controlPanel.setLayout(new FlowLayout());

        mainFrame.add(headerLabel);
        mainFrame.add(controlPanel);
        mainFrame.add(statusLabel);
        mainFrame.setVisible(true);  
    }

    private void showTextFieldDemo(){
        headerLabel.setText("Control in action: TextField"); 

        Label  namelabel= new Label("User ID: ", Label.CENTER);
        final TextField userText = new TextField(16);
        userText.setText("name");
        Button displayButton = new Button("Display");
        displayButton.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {     
                String data = "Username: " + userText.getText();
                statusLabel.setText(data);        
            }
        }); 

        controlPanel.add(namelabel);
        controlPanel.add(userText);
        controlPanel.add(displayButton);
        mainFrame.setVisible(true);  
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM