我對日本RHEL5機用戶不能在這上面輸入任何具有JTextField的一個小問題,我使用下面的語法無法輸入的JTextField
Container c = getContentPane();
c.setLayout(new GridBagLayout());
GridBagConstraints gbc = new GridBagConstraints(0, 0, 1, 1, 0.0, 0.0,
GridBagConstraints.EAST, GridBagConstraints.NONE, new Insets(5, 5, 10, 0), 0, 0);
c.setBackground(Color.WHITE);
JTextField txtName = new JTextField(10);
txtName.addKeyListener(new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
}
@Override
public void keyReleased(KeyEvent e) {
disableBtn();
}
@Override
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub
}
});
gbc.gridx = 1;
gbc.fill = GridBagConstraints.HORIZONTAL;
gbc.anchor = GridBagConstraints.NORTHWEST;
c.add(txtName, gbc);
disableBtn()方法禁用創建它如果用戶沒有在上面的文本框中輸入任何內容,則在對話框中按鈕。 並使用add方法將它添加到JPanel中,我爲此使用了GridBagLayout。這個問題發生在一些JTextField中,其他人工作正常。另外,在我的開發機器上運行良好,但是當我將代碼傳輸到日本的RHEL5機器時,存在問題。
我已經面臨着類似的問題與JPasswordField中,並使用以下解決它,
password.setEchoChar('*');
password.enableInputMethods(true);
的具有機器問題是具有下列的 「Java的版本」 命令輸出,
# java -version
java version "1.6.0_31"
Java(TM) SE Runtime Environment (build 1.6.0_31-b04)
Java HotSpot(TM) Server VM (build 20.6-b01, mixed mode)
我認爲這很好。有什麼我在這裏失蹤了嗎?
你可能要粘貼與不可編輯的JTextField相關的代碼片段。 – asgs 2012-03-19 08:12:43
爲了儘快提供更好的幫助,請發佈** [SSCCE](http://sscce.org/)**。這應該可以在<20行代碼中重現。順便說一句 - *「我用下面的語法創建它 'JTextField field = new JtextField();'」*不,你不是!該代碼不會編譯(由於錯誤的情況)。請不要浪費人們試圖幫助你的時間,通過發佈類似於所用代碼的東西。 ***複製/粘貼***無論是SSCCE還是代碼片段。 – 2012-03-19 08:17:25
是的,我輸入了它,但除此之外沒有別的。無論如何我都編輯過它。 – 2012-03-19 09:18:31