2011-03-04 39 views
1
void getThisAlert(String Title, Displayable txtagency2) 
{ 
    Alert error = new Alert("", Title, null, AlertType.INFO); 
    error.setTimeout(2000); 
    Display.getDisplay(myProject).setCurrent(error,txtagency2); 
} 

我正在驗證大量數據的..所以他未填寫一些特定的細節,之後我希望把重點放在它顯示用戶之後....所以會有人請提供一些解決方案...如何在j2me中顯示錯誤後將焦點放在textfield上?

因爲我可以把重點放在其他頁面上。

回答

1

您可以使用callSerially方法Display對象avec類實現Runnable

private class ItemFocusEventHandler implements Runnable 
{ 
    private Item _Item = null; 

    public ItemFocusEventHandler(Item item) 
    { 
      _Item = item; 
    } 

    public void run() 
    { 
      try { Thread.sleep(1000); } 
      catch (Throwable t) { ; } 

      _display.setCurrentItem(_Item); // sets focus to item 
    } 
} 

然後在數據驗證例程

if (_txtName.getString().length() == 0)) 
{ 
    Alert alert = new Alert(null, "Name ?", null, AlertType.ERROR); 
    alert.setTimeout(2500); 
    _display.setCurrent(alert, this); 
    _display.callSerially(new ItemFocusEventHandler(_txtName)); 
} 

這樣的重點將收到_txtName。您也可以將該處理程序用於其他UI元素。

相關問題