Bonjour, je suis nouveau sur BlackBerry et j'essaie de créer une boîte de dialogue de saisie personnalisée sur l'événement click menu dans blackberry 7.0. Tout fonctionne bien, le seul problème est que je ne suis pas capable de récupérer la chaîne de textbox présente dans la boîte de dialogue.Création d'une boîte de dialogue de saisie personnalisée dans blackberry
public class MyScreen extends MainScreen implements FieldChangeListener
{
String host;
private MenuItem mu;
Dialog dg;
TestDialog td;
public MyScreen()
{
final String choices[] = {"Ok","Cancel"};
final int values[] = {Dialog.OK,Dialog.CANCEL};
mu=new MenuItem("Configure IP", 1, 1){
public void run()
{
UiApplication.getUiApplication().invokeLater(new Runnable()
{
public void run()
{
td=new TestDialog(choices, values);
dg=new TestDialog(choices, values);
int iResponse = dg.doModal();
if(iResponse == 0)
{
String url=td.getUsernameFromField();
if(url.equals(""))
{
Dialog.alert("Empty");
}
else
{
Dialog.alert("Not Empty");
}
}
else
{
System.out.println("Cancel Presses");
}
}
});
}
};
addMenuItem(mu);
setTitle("Custom Dialog box");
}
}
final class TestDialog extends Dialog{
public RichTextField rd;
public TestDialog(String choices[],int values[]){
super("Enter Host address", choices,values,Dialog.OK,
Bitmap.getPredefinedBitmap(Bitmap.INFORMATION), Dialog.GLOBAL_STATUS);
rd=new RichTextField();
add(rd);
rd.setEditable(true);
XYEdges thickPadding = new XYEdges(10, 10, 10, 10);
Border roundedBorder = BorderFactory.createRoundedBorder(thickPadding,
Border.STYLE_SOLID);
rd.setBorder(roundedBorder);
}
public String getUsernameFromField(){
return rd.getText();
}
}
L'exécution du code ouvre une boîte de dialogue de saisie après avoir cliqué sur le bouton de menu. Maintenant, si je saisis quelque chose dans la boîte de texte et que je clique sur ok, j'obtiens la valeur de String url == "", et j'obtiens une boîte de dialogue disant vide. Je veux juste cette valeur de textbox. S'il vous plaît aidez-moi je suis coincé sur ce ...
merci mec qui a été d'une grande aide ..... – AMUL