簡體   English   中英

如何使用Java Swing從TextField在屏幕上打印用戶輸入

[英]How to print the user input on screen from a TextField using Java Swing

我是Java的GUI新手。 但是,我嘗試了下面的程序,但它不起作用。 這是一個獨立的應用程序。 我在網上搜索但找不到相關的答案。 請幫忙。

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class usernamepass extends JFrame implements ActionListener{
    JTextField a;

    public usernamepass(){
       JFrame jp=new JFrame();
       add(jp);
       a=new JTextField(12);
       jp.add(a);
       a.addActionListener(this);
    }

    public void actionPerformed(ActionEvent ae){
        this.repaint();
    }

     public static void main(String [] args){
         usernamepass obj=new usernamepass();
         obj.setSize(300,300);
         obj.setVisible(true);
         obj.setResizable(true);
         obj.setTitle("HI") ;
     }

     public void paint(Graphics g){
         g.drawString("Name "+a.getText(),10,70);
     }
}

編輯:對不起,我弄亂了代碼(系統崩潰)。 好吧,代碼隨着更改而運行,但是我看到打印消息只是覆蓋舊的消息並且沒有重新繪制。

而不是在actionPerformed方法中創建一個新的usernamepass對象,而是使用this關鍵字繪制當前屏幕。

在你的代碼中嘗試這個,它應該工作。

public void actionPerformed(ActionEvent ae){
      this.repaint();
}

暫無
暫無

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

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