BlackBerry Forums Support Community               

Closed Thread
 
LinkBack Thread Tools
Old 10-15-2004, 09:15 AM   #1 (permalink)
New Member
 
Join Date: Oct 2004
Posts: 2
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default Dialog with fields

Please Login to Remove!

I am trying to create a simple popup dialog that propmpts for a user name and password, and an OK and Cancel buttons using the following code:

public final class LoginDialog extends Dialog
{
private EditField userNameField;
private EditField passwordField;

public LoginDialog(String choices[], int values[])
{
super("Login Information", choices, values,
Dialog.OK, Bitmap.getPredefinedBitmap(Bitmap.INFORMATION), Dialog.GLOBAL_STATUS);

userNameField = new EditField
("User Name: ", "", 50, EditField.EDITABLE);
add(userNameField);

passwordField = new EditField
("Password: ", "", 50, EditField.EDITABLE);
add(passwordField);
}
}


The problem I have is that the two fields are displayed "below" the Ok and Cancel buttons.

I also tried replacing the adds by inserts as follows:

insert(userNameField, 3);
...
insert(passwordField, 3);

but this just give me a dialog, but the fields do not show up. Using an index of 0 or 4 gives me a ArrayIndexOutOfBounds exception. Using index of 1,2, or 3 give me a dialog without fields.

How can I make the two fields show above the buttons?

Thanks,
Jaime
Offline  
Old 10-15-2004, 10:54 AM   #2 (permalink)
Knows Where the Search Button Is
 
Join Date: Sep 2004
Posts: 17
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default

try this:

Code:
public final class TestDialog extends Dialog
xxx123;
    private EditField userNameField;
    private EditField passwordField;

    public TestDialogxxx40;String choicesxxx91;xxx93;, int valuesxxx91;xxx93;xxx41;
    xxx123;
        superxxx40;"Login Information", choices, values, Dialog.OK, Bitmap.getPredefinedBitmapxxx40;Bitmap.INFORMATIONxxx41;, Dialog.GLOBAL_STATUSxxx41;;
        
        userNameField = new EditFieldxxx40;"User Namexxx58; ", "", 50, EditField.EDITABLExxx41;;        
        passwordField = new EditFieldxxx40;"Passwordxxx58; ", "", 50, EditField.EDITABLExxx41;;
        
        Manager delegate = getDelegatexxx40;xxx41;;
        ifxxx40; delegate instanceof DialogFieldManager xxx41;
        xxx123;
            DialogFieldManager dfm = xxx40;DialogFieldManagerxxx41;delegate;
            Manager manager = dfm.getCustomManagerxxx40;xxx41;;
            ifxxx40; manager != null xxx41;
            xxx123;
                manager.insertxxx40;userNameField, 0xxx41;;
                manager.insertxxx40;passwordField, 1xxx41;;
            xxx125;
        xxx125;
        
    xxx125;    
xxx125;
Offline  
Old 10-15-2004, 01:32 PM   #3 (permalink)
New Member
 
Join Date: Oct 2004
Posts: 2
Post Thanks: 0
Thanked 0 Times in 0 Posts
Default

That works great. The only caviot is the that the "values" parameter of the constructor should be padded with two extra fields at the beginig, otherwise the return value is not picked correctly:

String choices[] = {"OK", "Cancel"};
int values[] = {0, 0, Dialog.OK, Dialog.CANCEL};

TestDialog pw = new TestDialog(choices, values);
if (pw.doModal() == Dialog.OK)
{
...
}

Many thanks!

Jaime
Offline  
Closed Thread


Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On





Copyright 2004-2014 BlackBerryForums.com.
The names RIM and BlackBerry are registered Trademarks of BlackBerry Inc.