[英]Calling method from ActionListener
我有一個名為TEXTIN的JTextField,當按下返回鍵時,它應該從構造函數中的ActionListener調用我的rollText方法。 我沒有主意,並且已經嘗試修復了一段時間。 這是來自構造函數的代碼:
TEXTIN.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e){
rollText();
}
rollText方法應從TEXTIN中獲取文本並逐行打印10個JLabel中的文本。 我不會發布整個方法,因為我知道給定預定義的輸入后它就會起作用,但是它的開頭是:
public void rollText(ActionEvent e) throws InterruptedException{
TEXTIN.setEditable(false);
String inputText = TEXTIN.getText();
...
希望有人可以幫助我。 謝謝。
public void rollText(ActionEvent e) throws InterruptedException
您可以將其更改為:
public void rollText() throws InterruptedException
當然,提供該方法不需要ActionEvent。 如果這樣做,則更改以下內容:
public void actionPerformed(ActionEvent e)
{
rollText();
}
至:
public void actionPerformed(ActionEvent e)
{
rollText( e );
}
你可以做這樣的事情
class MyClass{
JTextField textIn;
class MyActionListener extends ActionListener{
private MyClass cls;
public MyActionListener(MyClass cls){
this.clas = cls;
}
public void actionPerformed(ActionEvent e){
cls.rollText(e);
}
}
public MyClass(){
textIn.addActionListener(new MyActionLIstener(this));
}
}
您需要創建自己的動作偵聽器,並將實例傳入動作偵聽器的構造函數中。
我的機器上沒有Java編譯器,因此上面的代碼將包含一些bug,但它應該使您大致了解如何進行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.