[英]How to show names in Jtextfield click on JButton using Netbeans
[英]How do you simulate a click on a JTextField? Equivalent of JButton doClick()?
我正在研究Java項目,需要按鍵來模擬對JTextField的單擊。 我正在尋找的是JButton doClick()方法的等效項。
我試圖讓按鍵“輸入”執行與單擊JTextField完全相同的功能。
不知道要提供什么其他信息。 提前致謝。
好的,謝謝您的幫助。 我想我不清楚,但是由於您的一些想法,我現在已經找到了一種使我的代碼正常工作的方法。
我已經考慮過只創建兩個函數都調用的私有方法,但是部分代碼需要知道用戶單擊了哪個JTextField。 我發現了.getFocusOwner(),它使我可以使用Focus(JTextField)來引用當前項。 像這樣
public void keyPressed(KeyEvent e) {
if(e.getKeyCode()==KeyEvent.VK_ENTER) {
Object which = JFrame.getFocusOwner();
if(which.getClass() == JTextField.class)
foo(which);
}
}
public void mouseClicked(MouseEvent e) {
Object which = e.getSource();
if(which.getClass()== JTextField.class) {
foo(which);
}
}
可能有更好的方法,但是基本上我有一個JTextFields數組,當用戶單擊下一個JTextField時,程序運行正常,但是按Enter時,我不知道如何調用剛輸入的JTextField。所以我想模擬對JTextField的單擊(這需要焦點)。 我想我應該已經解釋了我的整個問題。
謝謝。
如果您希望由於鼠標和按鍵同時發生相同的事情,那么讓兩者都調用一個方法更有意義嗎? 也就是說,您有一個類似fieldClicked
的方法,該方法同時被MouseListener
和KeyListener
調用。 這將更易於調試-減少事件的混亂,這可能非常令人困惑-並且可能更具可讀性。
我想要的是用戶按下Enter鍵時,它會調用與單擊框架中任意位置時相同的代碼
對我來說仍然沒有意義。
當用戶單擊框架上的任何位置時,會發生一些事情:
a)文本字段失去焦點
b)其他一些重點
您可以將ActionListener添加到文本字段。 當按下Enter鍵時,將調用ActionListener。 但是,如何猜測框架上的哪個位置會產生鼠標單擊呢? 在我看來就像是隨機邏輯。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.