在 JAVA 中的 JTextField 中设置 IP 地址

Set IP address inside JTextField in JAVA

我在 JAVA 中有这个简单的 GUI,我想在 JTextField 中放入一个字符串 包含我本地机器的 IP。

我尝试使用此命令获取 IP:

InetAddress.getLocalHost().getHostAddress();

并将其存储在一个字符串中,并将该字符串放入 JTextField 中 我试过使用 gettext()settext(),但没有成功。

代码:

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;

import java.awt.FlowLayout;

public class GuiLearn extends JFrame {
    private JLabel label;
    private JTextField textfield;

    public GuiLearn () {
        setLayout (new FlowLayout());

        textfield = new JTextField("This is where the IP address should be...");
        add(textfield);
    }

    public static void main (String args[]) {
        GuiLearn yuvi = new GuiLearn();

        yuvi.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        yuvi.setSize(400,400);
        yuvi.setVisible(true);
        yuvi.setTitle("guiiiiiii");
    }
}

请帮忙..

当您实例化 JTextField 时,您传递给构造函数的字符串参数将为您设置文本。 由于 InetAddress.getLocalHost().getHostAddress() returns 是一个字符串,您可以简单地将其作为构造函数参数传递给 JTextField。

this.textfield = new JTextField(InetAddress.getLocalHost().getHostAddress());

或者您可以在实例化对象后的任何时候简单地调用 this.textField.setText(InetAddress.getLocalHost().getHostAddress())