JTextField-javaswing-no游标?

JTextField-javaswing-no游标?,java,swing,Java,Swing,嘿,伙计们,看到这段代码了吗: JFrame loginFrame = new JFrame("Login"); loginFrame.setSize(500,400); JPanel loginPanel = new JPanel(); loginPanel.setLayout(new GridLayout(0,2)); JLabel header = new JLabel("Login"); JLabel header2 = new JLabel("blahvlah"

嘿,伙计们,看到这段代码了吗:

JFrame loginFrame = new JFrame("Login");

  loginFrame.setSize(500,400);
  JPanel loginPanel = new JPanel();
  loginPanel.setLayout(new GridLayout(0,2));

  JLabel header = new JLabel("Login");
  JLabel header2 = new JLabel("blahvlah");
  JLabel loginLabel = new JLabel("Login");
  JTextField loginField = new JTextField(24);
  JLabel passLabel = new JLabel("Password");
  JTextField passField = new JTextField(24);

  loginPanel.add(header);
  loginPanel.add(header2);
  loginPanel.add(loginLabel);
  loginPanel.add(loginField);
  loginPanel.add(passLabel);
  loginPanel.add(passField);

  loginFrame.add(loginPanel);
  loginFrame.setVisible(true);
loginframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
应用程序上存在JTextFields,但我无法在其中输入任何内容?也没有光标,有什么问题?而且我的关闭退出似乎不起作用


谢谢

您发布的代码没有编译(您在最后一行键入的是
loginframe
,而不是
loginframe
)。修复该问题后,将执行以下程序:

public class JFrameTest {
    public static void main(String[] args) {
        JFrame loginFrame = new JFrame("Login");

        loginFrame.setSize(500,400);
        JPanel loginPanel = new JPanel();
        loginPanel.setLayout(new GridLayout(0,2));

        JLabel header = new JLabel("Login");
        JLabel header2 = new JLabel("blahvlah");
        JLabel loginLabel = new JLabel("Login");
        JTextField loginField = new JTextField(24);
        JLabel passLabel = new JLabel("Password");
        JTextField passField = new JTextField(24);

        loginPanel.add(header);
        loginPanel.add(header2);
        loginPanel.add(loginLabel);
        loginPanel.add(loginField);
        loginPanel.add(passLabel);
        loginPanel.add(passField);

        loginFrame.add(loginPanel);
        loginFrame.setVisible(true);
        loginFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}
跑得很好。我可以在两个JText字段中输入文本,也可以关闭JFrame:


在我的系统上看起来完全不同,我运行linux并使用eclipse,也许我的jdk设置不正确?在创建JFrame屏幕截图之前,我已经调整了JFrame的大小。GUI组件可能因底层窗口管理器的不同而有所不同(我运行的是Ubuntu+Gnome)。你管理我发布的课程了吗?您安装了什么JRE?我建议创建一个新类
JFrameTest
,并在其中复制上面的内容。然后从您的命令行编译并运行它。回答得很好/详细程度很高。我喜欢你添加屏幕截图的事实。默认的LinuxJDK非常糟糕。如果没有,您可以尝试从Sun获取发行版,并确保您的类路径指向您正在使用的JDK的正确库。谢谢Bill。是的,我也安装了Sun的JRE(没有IcedTea或GCJ,天哪不允许!)。尽管我对Eclipse的编译器一直很满意。@keval:这里有没有我们看不到的代码?尝试从代码中删除与创建单个
JTextField
(或创建仅显示
JTextField
的新应用程序)无关的所有内容,并检查是否可以重新编译。