0

私はブラックベリー開発者の新機能です。 pillsetbuttonpillfieldbutton を使用していますが、pillfieldbuttonをクリックすると、何も実行されません。setchangeListener()method.butを使用していますが、何も実行されていません。setChangeListenerメソッドが呼び出されていません

public DemoPill() { 

         PillButtonSet objButtonSet=new PillButtonSet(); 

         final PillButtonField objButtonField1=new PillButtonField("NSE"); 
         final PillButtonField objButtonField2=new PillButtonField("BSE"); 

         objButtonSet.add(objButtonField1); 
         objButtonSet.add(objButtonField2); 

         this.add(objButtonSet); 

    bjButtonSet.setChangeListener(new FieldChangeListener() { 

     public void fieldChanged(Field field, int context) { 
      System.out.println("Hi "); 

      if(field==objButtonField1) 
      { 

       System.out.println("This Is NSE Button"); 
      } 
      else if(field==objButtonField2) 
      { 


       System.out.println("This Is BSE Button"); 
      } 

     } 
    }); 


} 

} 
+0

set Field.Focusable and try .. – Hitarth

答えて

1

あなただけではない、実行でデバッグモード

System.out.println("ANYDATA"); 

の出力を表示することができます。
デバッグして実行しないようにしてください。

1

コンソールに印刷しています。コードをデバッグすることなく、クリックが消費されたかどうかはわかりません。したがって、イベントスレッドを使用して画面上の出力を確認してください。私はちょうどそれをチェックするサンプルを提供しています。画面に出力が表示されます。また、Dialog.inform(String message)を使用することもできますが、常にイベントスレッドでそれを行うのは良いことです。

public DemoPill() { 

        PillButtonSet objButtonSet=new PillButtonSet(); 

        final PillButtonField objButtonField1=new PillButtonField("NSE"); 
        final PillButtonField objButtonField2=new PillButtonField("BSE"); 

        objButtonSet.add(objButtonField1); 
        objButtonSet.add(objButtonField2); 

        this.add(objButtonSet); 

bjButtonSet.setChangeListener(new FieldChangeListener() { 

    public void fieldChanged(Field field, int context) { 
     // System.out.println("Hi "); 

     if(field==objButtonField1) 
     { 
        UiApplication.getUiApplication().invokeLater(new Runnable() { 

      public void run() { 

       Dialog.inform("objButtonField1 button clicked")     

      } 
     }); 

     } 
     else if(field==objButtonField2) 
     { 


      UiApplication.getUiApplication().invokeLater(new Runnable() { 

      public void run() { 

       Dialog.inform("objButtonField2 button clicked")     

      } 
     }); 
     } 

    } 
}); 


    } 

} 

これがありがとうございます。 :)

関連する問題