using a custom field - noob

Hello

I'm quite new to Java programming, I followed some of the guides provided on how to create Blackberry applications, though.  However I followed a pdf document called development, which describes how to create custom controls/fields.  The problem I have is once the class has been created, how to use it?

I created a class called customButtonField.java, I try to call to create a new field as follows,

customButtonField customButton = new customButtonField ("click me", "SQUARE", 0);

The error I get is,

cannot find symbol

symbol: method customButtonField (java.lang.String, java.lang.String, int)
Location: class mainScreenStyleScreen
customButtonField customButton = new customButtonField ("click me", "SQUARE", 0);
^

It is what is in the customButtonField class

public customButtonField (label As String, int form, long style) {}
Super (style);
_label = label;
shape _shape =;
_font = getFont();
_labelHeight = _font.getHeight ();
_labelWidth = _font.getAdvance ("_label");
}

Any help would be appreciated!

Hi mabs.

A problem that I found with your code is that the average parameter set in the CustomButtonField constructor is 'int form'. However, when you call create your new instance with the "new" statement, you pass the value "SQUARE". 'SQUARE' is a string. If you pass a string as a parameter that requires an int.

Tags: BlackBerry Developers

Similar Questions

  • Is it possible for 2 or more FxV strike filters to change the same custom field?

    Hello

    is it possible to have 2 (or more) FxV hit update the same custom field filters?  I know that the filters 2 or more successful can update the same metric, but not what I need.

    I have a filter tube set for each stage of a procurement process of several steps (such as beginning, calculateOrder, processPmt).

    In the first filter of success, I have extracted something similar to a username.  That the same info is in the other two hit filters for each step of the process.  If the FxV user performs a search on the 3rd filter, that is processPmt, then in results research they won't see all of the data that in are extracted by the first hit (start) filter.   So I tried to add a custom field to the 3rd hit filters which also extracts the data of the user ID and her add her to the same custom field, but it won't let me because this field is already used.

    ideas?

    THX

    "mark".

    Mark,

    I can be missing what you are trying to do, but you should be able to use a custom field in another filter of success.  You want to ensure that you choose the name already in use, as opposed to the 'new custom field".  So for the update/addition to hit the 'user name' field, you'd like this screenshot.

    You set the condition and choose setting the value to append or reset as you wish.  And then save the filter hit.

    Was what you were trying to do, or something else?

    Jeff

  • A matter of design using the custom in custom frames fields.

    A matter of design, which is a good implementation of the following?

    I read the articles in the Knowledge Base 'Create custom fields' and 'Create a custom handler for a screen presentation' and what I want to do is control any arbitrary custom field - a Manager custom.

    For example, if I have the following fields:

    1. Field
    2. Field
    3. Field
    4. Field
    5. Field

    I want the second and fifth fields to have a different margin, filling or the width of the first, third and fourth fields, I would by methods layout() and object to the second and fifth fields - which shall replace the custom method of the sublayout() Manager logic?

    Or can I add logic in the custom handler, I find the fields with the method getField() to get the second and fifth fields and change the margin, filling or width with the logic in the custom handler?

    What is the right place to put the logic?

    Thank you.

    the field can only work with the space assigned by the Manager. how he uses this space is to the field, he could see itself smaller, for example.

  • Focus / Unfocus spoils the fields when using custom fields - help

    Hello

    I hope someone can help me with a problem I see with a screen that contains a VerticalScreenManager that contains a number of custom HorizontalFieldManagers, which each contain a LabelField and an EditField.

    Note: I use a HorizontalFieldManager customer so that I can use sublayout to field possible as I need.

    The purpose of the screen is to allow the user to scroll through the fields and on the focus on the areas of editing.

    However, as the user rolls and fields in bulk and get focus, 'development emphasizing' is not 'cleaned' of previous field and so he is spoiling: several fields have the "update highlighting.

    I saw several other similar topics in the forum but nothing quite the same thing.

    Screen

    -Vertical area Manager (standard)

    -(Custom) HorizontalFieldManager - LabelField - EditField

    -(Custom) HorizontalFieldManager - LabelField - EditField

    -(Custom) HorizontalFieldManager - LabelField - EditField

    It seems that when the scrolling HorizontalFieldManager becomes and lose focus, but do not repaint itself? Is this possible?

    I use OS 5.0.

    Thank you very much

    David

    It seems that the problem was the VerticalFieldManager had not the color of the sae background as areas that are part of it and so when the focus and unfocus painted the background color VerticalFieldManager was painted, I don't know why this has been, and if it's a bug in the OS 5.0, but when I set the background color in the VerticalFieldManager I don't see the problem.

  • Customizing fields using the BC & DW form builder

    I've created a form, "pre-order" as follows:

    1. CRM > extend CRM database, where I created the CRM data fields
    2. Web Forms > Add Web form > I added the form default CRM 'contacts' fields in the form BC Builder
    3. I then downloaded the form using DW and customize the fields; example: changed "at home" to "delivery address", removed the 'cell phone' field, changed "telephony" to "primary phone"...

    After pressing this form dates back to BC, I tested the form and the fields that I had custom data not in the CRM.

    Can someone help me with this problem?

    Thank you

    Catherine

    Thanks for your reply. In fact the form of CRM data works (data capture to CRM). His section of default contact form, where I customized fields that does not work. I now work with my 3rd BC tech on it as I write this response.

  • Update custom fields in VC without using Get - VM

    Greetings-

    I am trying to determine a way to update a custom field in Virtual Center via powershell without using Get - VM.  I am able to extract custom using Get-View fields

    $VMView = Get-View -ViewType virtualmachine -filter @{"Name" = $input_machinename}

    return $VMview.customvalue [7] .value

    However, all of the examples I found related to the update/filling of custom fields requires the use of Get - VM.  While that's great and all, but everyone knows at this stage that Get - VM is something you want to avoid problems with speed

    http://communities.VMware.com/thread/206909;JSESSIONID=C3AC43115524E4F5F8608530367321B3?TSTART=0

    http://communities.VMware.com/message/1122166#1122166

    It is an example of the code snippet that I fight with in an attempt to update a custom field.

    #This is the line which takes about 2 minutes

    $VMName = Get-VM | {$_.name - eq "adv0010vpvc01"}

    $VMView = $VMName | Get-View

    $VMName.CustomFields.values [3] # prints the name of custom field

    $VMName.CustomFields.keys [3] # print the value of custom field

    $VMView.setCustomValue($VMName.CustomFields.keys[3],"10/10/2000") #Updates custom the field with the value "10/10/2000.

    Thank you very much

    The final alternative is to use the SDK method to set a custom field.

    Can you try this and see if it is faster?

    $input_machinename = 
    $CustomVarName = 
    $CustomVarValue = 
    
    $vm = Get-View -ViewType virtualmachine -Filter @{"Name"=$input_machinename}
    $vm.setCustomValue($CustomVarName, $CustomVarValue)
    
  • Getting context object null when using the custom menu item.

    Hi all

    I implemented a sample application to add menu item custom to the list of messages and we test this build on 9000 os 5.0.0.41 Blackberryy 1

    On BB 9000, we have 2 message inbox, A like Blackberry by default message inbox and B as long as the Inbox for the e-mail account, I have set up on BB 900.
    I implemented the menu custom application to add menu on the message list option.
    I see this option on both my inbox, the question that I am facing is when I click on the menu item by selecting the email in the message of default A Blackberry inbox I can get the context object were like when I click on the same message next to the Inbox B I'm always get the context as a NULL object.

    Below is the code I used to add the custom menu item.

    Public Shared Sub main (String [] args)
    {
    If (args! = null & args.length > 0) {}
    call from another entry point. Add menu items mark as Spam and mark as suspects.
    {if(args[0].) (Equals ("GUI"))}
    try {}
                            
    create menu items.

    MyMenu ApplicationMenuItem = new EmailFile();
    Add the menu item in the list view and send by e-mail.
    Amir ApplicationMenuItemRepository = ApplicationMenuItemRepository.getInstance ();
    amir.addMenuItem (ApplicationMenuItemRepository.MENUITEM_MESSAGE_LIST, mymenu);
    } catch (Exception e) {}
    Utility.debugLog (try (), CLASSNAME, 'hand', Utility.EXCEPTION_INFO);
    System.out.println("Error:"+e.ToString());)
    }
    } else {}
    show on the application of spam...
    AppMain _theApp = new AppMain();
    _theApp.enterEventDispatcher ();
    }
    } else {}
    show on the application of spam...
    AppMain _theApp = new AppMain();
    _theApp.enterEventDispatcher ();
    }
    }

    Can we know what is the problem in my code or something I'm missing.

    Thanks in advance.

    Navneet Gupta.

    application menu items have been bugged for ages. There is nothing you can do except change your workflow. in some cases, you can recover the app screen and trying to extract something of these fields, but becomes more difficult in the new OS versions because of custom fields used by rim.

  • Question regarding setExtent and getPreferredWidth for the custom field

    I am trying to understand the difference between getPreferredWidth and setExtent, which relate to the width of a custom field.

    I create a field that may be greater than the width of the screen. The field is made up of cells (for example columns and lines or cells, such as a table). The cells contain text, shapes, lines, color, etc. When I display the field I only paint the visible columns on the screen and allow the user to use the trackball to accomplish the columns out of the screen.

    At present, getPreferredWidth returns the total width of the field without all the empty columns, is longer than the width of the screen. I use the same value in setExtent for width. GetPreferredWidth must return the size of the field that is painted on the screen - the total width less the width of the columns out of the screen? I have the same question about setExtent - width either in total, longer than the screen width or the width of the part of the field that is painted on the screen?

    If I use the width of what is painted on the screen or the other of these methods, then the width changes when the user scrolls through the field. As the user scrolls, I calculate the number of columns will agree to a width of the screen and paint these columns. Is it a problem to have the PreferredWidth and the setExtent change width? I read that setExtent is called only when the Manager sets this field, so that the changes will not be recognized.

    It seems to work in two ways in a few simple tests, but I was just curious as the value of width that is right.

    Thank you!

    Mark

    When a field has changed in a way that requires the update of the screen (for example, after scrolling offset changes), simply call invalidate() from this area. That will eventually lead to paint (Graphics) for the field. At this point, you return the update field. (If only part of a field - as a single cell - needs to be updated, there invalidate() versions that accept arguments where, for efficiency, you can limit the update for just this part.)

    If I understand your needs, you can achieve the effect desired in the paint method. You can use the current dimensions of the field, the cutting of the graphics area, and your internal roll compensates to decide what to paint and what to delete. Let your custom field leave white space where you decide of doesn't make is not part of a cell. There is no need to change the scope of the field.

    If you go about it by changing the dimensions of the field, and then you ask the system to play much more work he has to do. If the custom field is the only field on the screen, it won't make much difference in the behavior (although there may be performance). With more than one field, it can be weird effects. For example, suppose that your custom field is one of several fields in a HorizontalFieldManager and you change the field width. When the HorizontalFieldManager recalculates its own layout, it will change the horizontal position of the fields to the right. The effect on the user, I think, would be really confusing: as the custom field parade, parties to the right of the screen could bounce left and right as the changed width field. I can't imagine that's what you want.

    Here's another way to think about this: absent some bit of style, your custom field would prefer be exactly wide and high enough to show all without scrolling. So the width and height would be based on adding the appropriate cell widths and heights, regardless of what actually is on the display. (It's also a long time that you do not have something fanciful.) If the optimum height is a function of the width available - as with sheathed on the line of text - you would implement this logic in the layout method. You then have no use for autonomous preferred width and height).

  • Question view screen with custom fields

    I've developed a class that extends the scope and Implements DrawStyle. The field contains a bitmap with text drawn on the left of the it... nothing too complicated. I made focasable, has erased layout and drawFocus, painting, etc., but I'm having a Visual anomaly.

    On my screen (no title), I added a LabelField (non-active), and then a BitmapField (non-Focus), followed by a number of my custom fields. When the first screen, everything looks great. My first custom control has focus and is drawn as such.

    The problem occurs when I scroll through the custom control 3rd to 4th (causing the screen scroll), the 2nd custom control appears twice, the 3rd is missing and the 4th has the focus. There are also some white background that starts to show through (my controls are all black and is so the bottom of the screen and other controls).

    Of course, I'm having some trouble of painting, but it is certainly related to scrolling.

    What methods should be overritten in a custom control to ensure the scrolling will work properly?

    Which must be defined in the screen?

    1. prepare your screen unscrollable as:

    Super (NO_VERTICAL_SCROLL);

    2 use a VerticalFieldManager to add all of your components.

    Make sure verticalManager Scrollable and set its size and background color.

    Something like:

            mainManager = new VerticalFieldManager(Manager.VERTICAL_SCROLL | Manager.VERTICAL_SCROLLBAR)
            {
                //setting background color
                protected void paintBackground(Graphics graphics)
                {
                    graphics.setBackgroundColor(0x00000000);
                    graphics.clear();
                    super.paint(graphics);
                }
                //setting its height and width
                protected void sublayout( int maxWidth, int maxHeight )
                {
                    int width = Display.getWidth();
                    int height = Display.getHeight();
                    super.sublayout( width, height);
                    setExtent( width, height);
                }
            };
    

    3. now add this to your screen.

    Now your screen does not scroll and you will not get the white background at the end.

    Let me know if you have any questions.

    Concerning

    Bika

  • Two sliders in the custom field definition

    Hi guys,.

    First of all, I want to thank all those who helped me to this day. This forum has been essential for blackberry dev work I do, and I would be screwed without you guys. That being said, I'm having a problem. I install a custom like this text entry field.

    (1) creates a vertical field Manager, assigned a background and resized image with setExtent(). (works fine)

    (2) created a new type of field and inserted in the vertical field Manager to make native look (almost works)

    The problem I have is that two sliders are appearing. Cursor #2 is dynamically updated as it should be, but the #1 cursor seems to be a "flawed slider. Please see the image below for details.

    The custom field is defined using the following code. If I remove the custom field, or cursors comes, so I am positive that it is the source of the problem.

        public class JustifiedEditField extends HorizontalFieldManager implements FieldChangeListener {
            BasicEditField ef;
    
            public JustifiedEditField(long style) {
                super(USE_ALL_WIDTH);
                ef = new BasicEditField(style) {
    
                    protected void onDisplay() {
                        setPosition(10, 17);
                        update(0);
                        //invalidate();
                    }
    
                    protected void update(int d) {
                        super.update(d);
                        setPosition(10, 17);
                        //invalidate();
                    }
    
                    protected void paint(Graphics graphics) {
                        graphics.setColor(Color.WHITE);
                        getFocusRect(new XYRect());
                        drawFocus(graphics, true);
                        super.paint(graphics);
                    }
    
                    protected void onUnfocus() {
                        invalidate();
                    }
    
                    protected void onFocus(int direction) {
                        invalidate();
                    }
    
                    /**
                     * Intercepts ESCAPE key.
                     * @see net.rim.device.api.ui.component.TextField#keyChar(char,int,int)
                     */
                    protected boolean keyChar(char ch, int status, int time) {
                        switch(ch) {
                            case Characters.ESCAPE:
                                // Clear keyword.
                                if(super.getTextLength() > 0)
                                {
                                    setText("");
                                    return true;
                                }
                        }
                        return super.keyChar(ch, status, time);
                    }
                };
                add(ef);
            }
    
            protected void sublayout(int width, int height) {
                super.sublayout(width, height);
                setExtent(width, 57);
            }
    
            public BasicEditField getEditField() {
                return ef;
            }
    
            public String getText() {
                return ef.getText();
            }
    
            public void setText(String value) {
                ef.setText(value);
                invalidate();
            }
    
            public void setChangeListener(FieldChangeListener changer ){
                ef.setChangeListener(changer);
            }
    
            public void fieldChanged(Field field, int context) {
                invalidate();
            }
        }
    

    I am totally stuck on this issue, any help would be really appreciated. TIA!

    I came up with an alternative solution. It turns out that I can use a transparent border to set the offsets to where the edit field must be located within the input Manager; thus eliminating the need to use setPosition.

  • Problem in designing a custom field for the display of paragraph

    Hello

    I need to develop a custom field that is supposed to act as a RichTextField with the additional of the hyperlink feature as seen in the web pages. I have a few paragraphs of text with an id associated with each of them. A paragraph may have link to another paragraph. I think that the hyperlink is actually like a button.

    My screen will consist of a single paragraph. If any hyperlink (id) in this paragraph is preesed then the screen reloads with another paragraph (id in a hurry).

    My problem is to develop a custom field for the display of this paragraph.

    Point: several lines of text without interruption. Some of the text may be bold, italic. a text can be the hyperlink.

    Now I'm stuck. I have no ideas how I can start with. Can someone give me please suggestions as to how I can start with?

    Thanks in advance

    Bika

    I have a different Suggestion.

    If you are using an ActiveRichTextField, you get two things:

    (1) the ability to shape a field using different fonts:

    Comment - formatting text in a RichTextField
    Article number: DB-00124
    http://www.BlackBerry.com/knowledgecenterpublic/livelink.exe/fetch/2000/348583/800332/800505/800345/...

    (2) the ability to create "links" automatically using string models

    How to-to comparison models in the BlackBerry smartphone to provide a user experience integrated applications
    Article number: DB-00525
    http://www.BlackBerry.com/knowledgecenterpublic/livelink.exe/fetch/2000/348583/800332/800505/800608/...

    Using models of string, I think you'd be able to create ' hot-link in your text, which the run Menu item was able to process you want.

    Just an idea.  Hope this works for you.

  • Need help with Custom Field Layout - getting wirer height value

    In the BB Simulator, I get a strange value placed in in my field layout() method custom. The width is 320, which is correct, but the height is 1073741823 and it takes 240 or less. In this test, my custom field is the only field in the Manager, so I expect to 240.

    I tried two different simulators - BB curve and the 8800. I use JDE 4.5.0 in Eclipse 3.4.1. This is the code for my method of layout:

    Protected Sub layout (int width, int height) {}
    s long = getStyle().
    If ((s & USE_ALL_WIDTH)! = USE_ALL_WIDTH) {}
    width = Math.min (width, getPreferredWidth());
    }
    If ((s & USE_ALL_HEIGHT)! = USE_ALL_HEIGHT) {}
    height = Math.min (height, getPreferredHeight());
    }
    setExtent (width, height);
    model.setExtent (width, height);
    Model.Scroll (0, 0);
    }

    I expect the value of the screen height, or less, if the domain is configured correctly.

    I'm upgrading my custom field in a VerticalField Manager with the following attributes:

    Super (VerticalFieldManager.USE_ALL_WIDTH
    | VerticalFieldManager.USE_ALL_HEIGHT
    | VerticalFieldManager.FIELD_HCENTER | VerticalFieldManager.FIELD_VCENTER);

    Is this a bug in the Simulator, or I understand the API correctly? Is there a way to 'reset' the Simulator - I tried to get out of Eclipse and restart Windows, but I always get the same value.

    Thank you!

    Mark

    A VerticalFieldManager comes, I think, with default VERTICAL_SCROLL.  If you do not want to scroll through this particular Manager, add VerticalFieldManager.NO_VERTICAL_SCROLL to your forests of style and it will be laid out with only the height and the actual width.

    Also, since you setExtent() by yourself, USE_ALL_HEIGHT and USE_ALL_WIDTH are redundant, I think.

    Hope that helps,

    Arkady.

  • Custom field highlighting the problem

    Hello

    I have a custom field class that extends the field.  the custom class allows me to put a photo inside the field.  The problem I have is when I give him a click event, it accentuates not.

    I overrided onUnfocus() drawFocus() onFocus() and object;

    I tried to use super.drawFocus () inside the drawFocus(), tried to use drawHighlightRegion with HIGHLIGHT_SELECT and HIGHLIGHT_FOCUS but no luck.

    Anyone know what I need to do to give hightlight when the user touches the screen, or click?

    OK, so as I said in the previous post, you can paint the blue highlight, but your bitmap image will then paint over clear tones.

    So that the nail is visible, you must set a fill around the bitmap. In other works, the measurement of field must be slightly larger than the size of the bitmap.

    You the best solution would have been to extend BitmapField (rather than field) and use the setSpace() method to set some padding.

    Otherwise, you will need to adjust the measurement of field in your replacement of subLayout().

  • Violation of page protection - error get by using the custom plugin

    https://Apex.Oracle.com/pls/Apex/f?p=63937:1:

    The app link.

    Identification information

    -TINO

    [email protected]

    -test123

    When I try to send a page using the normal text field, he's fine. But when I use my custom plugin it throws error PPV.

    You can see the plugin code in the shared components of the application.

    Application is called theme MDL.


    There also may be problems with my page template but I doubt since the ordinary questions works very well.


    I developed this on 4.2.6.

    Incredible.
    The problem is that the plugin was wrapped with

    As soon as I took it, it could submit its value.
    It's funny how I had no idea how fix it, but as soon as I saw you talking about form I knew what to look for.

    It would be cool to know why this happens.

    Thank you!

  • Web app custom field _nolink

    Hi I'm trying to add a nav to my email with a web application campaigns.

    I added a text (hyperlink) field in my app Web titled "navUrl" but I don't want the link and {tag_navUrl_nolink} or {tag_navUrl_value} will not work.

    This is what im trying to achieve:

    <table class="menu">
      <tr>
       <td>
       <table>
       <tr>
       <th class="menu-item"><a href="{tag_navUrl_nolink}">{tag_name_nolink}</a></th>
       <th class="menu-item"><a href="http://mywebsite.businesscatalyst.com/index.htm">Home</a></th>
       </tr>
       </table>
       </td>
      </tr>
    </table>

    I know that I can use the text field (String), but it gives more chance to customer stuffing it up if they are typing rather a link then selecting just.

    Screen Shot 2016-08-15 at 10.09.05 PM.png

    Thank you

    Luke

    Use more liquid which will make in page layouts in a web application. I understand with the above on module_webapps you have model = "" then liquid will make in that then through to email. "

Maybe you are looking for