How to conditionally make on of four TextFields UNEDITABLE

Hi all,
I have this app where I want to select one of four values to be calculated based on the input in three different ones.
So, I have this ChoiceGroup from which I select one item. I then have the itemStateChanged make the corresponding TextField uneditable and all others editable.
This all works like a charm, UNLESS I change a value in one of the editable TextFields and from that event change the value of the uneditable on (through setString()).
If I do that (and without that the whole application isn't really worth the while), I get an NPE:
java.lang.NullPointerException
at com.sun.midp.lcdui.DefaultInputMethodHandler.setConstraints(Unknown Source)
at javax.microedition.lcdui.TextField$InputMethodClientImpl.setConstraints(Unknown Source)
at javax.microedition.lcdui.TextField.setConstraints(Unknown Source)
at dofCalc.unselectTextFields(dofCalc.java:305)
at dofCalc.resetTextFields(dofCalc.java:325)
at dofCalc.itemStateChanged(dofCalc.java:430)
at javax.microedition.lcdui.Form.callItemStateChanged(Unknown Source)
at javax.microedition.lcdui.Display.callItemStateChanged(Unknown Source)
at javax.microedition.lcdui.Display.access$1000(Unknown Source)
at javax.microedition.lcdui.Display$DisplayAccessor.callItemStateChanged(Unknown Source)
at javax.microedition.lcdui.Display$DisplayManagerImpl.callItemStateChanged(Unknown Source)
at com.sun.midp.lcdui.DefaultEventHandler.itemStateChangedEvent(Unknown Source)
at com.sun.midp.lcdui.DefaultEventHandler$QueuedEventHandler.run(Unknown Source)
at java.lang.Thread.run(Thread.java:613)
What's going on here?
Is there no other way short of recreating the complete set of TextFields after every change of the choiceGroup?
TIA,
Karl.

It's a known but neglected bug. From my posts on these forums
[http://forums.sun.com/thread.jspa?threadID=698935] - #5
[http://forums.sun.com/thread.jspa?threadID=5240582] - #1
[http://forums.sun.com/thread.jspa?threadID=5214941] - #3
[http://forums.sun.com/thread.jspa?threadID=5274552] - #2
A possible workaround is to design 4 separate forms, each with one of the four TextFields disabled and setCurrent(...) on selection from the ChoiceGroup. Or you may be able to swap the TextFields on a single form using Form#delete(itemNum) and insertitemNum, item).
db

Similar Messages

  • How to Conditionally make some standard fields read only in OSC Simplified UI?

    Hello everyone, We have a requirement to make certain group of fields read only based on the value in another field. For example if the status changes to "Closed" then make the Name and Address fields read only. All these fields are standard fields. Is this possible in Oracle Sales Cloud?

    Post your problem in the forum for LiveCycle Designer.

  • Make text areas and textfields streach as window resizes

    im using the border layout for most of my panels. how do i make text areas and textfields stretch as the window resizes?

    Components placed in BorderLayout.CENTER will resize as the window resizes.
    You will likely need to have nested JPanels, with different layouts, to create the ultimate layout of all your components in a frame, especially for non-trivial applications.
    If you need specific help with layouts, you'll have to post an SSCCE.

  • I use more than one computer to access my four business email accounts. When one computer is on (and mail is open) emails do not get through to the other computers. This is fine, but how do I make one of the other computers the dominant one?

    I use more than one computer to access my four business email accounts. When one computer is on (and mail is open) emails do not get through to the other computers. This is fine, but how do I make one of the other computers the dominant one?

    I assume these are POP accounts and all computers are set to remove from Server after downloading.
    So on the non dominant ones... Mail Preferences>Accounts, highlight an account, Advanced tab, uncheck remove from Server, just have the main dominant one remove from server.
    Or get/setup IMAP accounts.

  • How do you make it send an email on a condition? Or automate emails?

    How do you make it automatically send emails or even on a condtiion? (like qty left of inventory is 0)

    As far as making the report emailed conditionally, if the report is an exception report (only showing items with inventory = 0, for example), then you could add this to the report footer to prevent an email from being sent if no exceptions exist (basic syntax):
    WhilePrintingRecords
    dim noEmail as number
    if count({any field}) = 0 then  ' If no records processed...
      noEmail = noEmail / noEmail ' divide by zero failure prevents email from being sent
    end if
    This assumes that the data coming back from the database will only be exception records.  If that is not the case, then you'll have to manually count the number of records with inventory = 0 and use that formula field in the IF statement above.
    The down sides to this technique are that this will cause BOE to not generate anything (not even a blank report), and the status of the run will be Failed...
    HTH,
    Carl

  • How i can make in the same action 2 condition (check the exemple down)

    how i can make in the same action 2 condition (check the exemple down)
    this is an example and I really thank you for helping me(any body plz)
    http://www.2shared.com/file/DPpdgC_a/Exemple_Edge.html

    1. make each rectangle a symbol  (Symbol_1 and Symbol_2) and uncheck autoplay()
    2. Delete your code on the click event and put the following code in compostion ready:
    var toggle=true;
    function btnPlay(){
              if (toggle){
                        toggle=false;
                        sym.getSymbol('Symbol_1').play();
              else{
                        toggle=true;
                        sym.getSymbol('Symbol_2').play();
    sym.$('Ellipse').click(function(){
              btnPlay();

  • HT5819 my digital drum kit has four toms. How do i make it work?

    I have a problem. My digital drumkit has four toms but the drumkit designer has only three. How do i make it work?
    My hihat stay open all the time even if i use the pedal.

    Try a system reset.  It cures many ills and it's quick, easy and harmless...
    Hold down the on/off switch and the Home button simultaneously until the screen blacks out or you see the Apple logo.  Ignore the "Slide to power off" text if it appears.  You will not lose any apps, data, music, movies, settings, etc.
    If the Reset doesn't work, try a Restore.  Note that it's nowhere near as quick as a Reset.  From iTunes, select the iPad/iPod and then select the Summary tab.  Follow directions for Restore and be sure to say "yes" to the backup.  You will be warned that all data (apps, music, movies, etc.) will be erased but, as the Restore finishes, you will be asked if you wish the contents of the backup to be copied to the iPad/iPod.
    There's more to try but let's go a bit at a time.

  • How can we make the value of pricing condition flow to the sales invoice?

    At an intercompany process, we have the condition type PBXX at the purchase order. On the other hand, at the sales invoice (which is created by VF01) of the sames process, there exists the condition type PR00. The calue of the condition types PBXX and PR00 should be the same. How can we make the value of PBXX flow to the sales invoice? I can create new pricing procedures if needed. I can change the types of the pricing conditions (such as PBXX or PR00) included at the procedures (by customization) if needed. All I need is to have the value of the price at the purchase order the same with the sales invoice at the same process. The transaction codes used at this process are:
    ME21N - Create purchase order
    VL10D - Create delivery
    VF01 - Create invoice
    Thanks in advance for the answers...

    Yes, i verified that the config item id in the pricing table and the cz_config_items table are the same (once we save the configuration).
    The reason we have to do this is coz I have to pass additional parameters, which are item speciific (captured at confiugurator runtime session) while making a call to the pricing engine.
    Hence, we are capturing some additional pricing parameters (during a runtime configurator session) in a custom table, and plan to link those to the corresponding items in the 'CZ_Pricing_Structure' table thru the config_item_id.

  • HT202060 How can I make Activity Monitor show one graph instead of four for MacBook Air?

    How can I make Activity Monitor show one graph instead of four for MacBook Air?

    Learn about OS X: Activity Monitor shows one CPU Usage graph on systems with more than four cores
    Copied and pasted from top of the page.

  • How do i make it so iTunes plays the music files from where i have chosen to store them?

    how do i make it so iTunes plays the music files from where i have chosen to store them as opposed to it scattering copies of my files into a myriad different folders based on the albums they came from when i'm not even interested in keeping whole albums?
    I recently converted myself to mac after having been a windows formatted person since the beginning of time. I use last.fm and the client scrobbler only supports iTunes on the mac (scobbling since Nov 06 and i'm now heavily dependant upon it as a means of discovering new music) - if you don't know what that means then take it for granted i have no option other than to use iTunes as my media player whn using the mac. And almost immediately upon using iTunes i was filled with horror.
    My tale of woe as follows: I copy all my mp3 files to folder X on my new mac. I copy my simple playlist in to that same folder X. The simple playlist simply lists all the files in folder X in the order i want to hear them in... simple right? And what happens the moment i start playing my simple list? Well you probably all ready know; itunes throws copies of all those files in to the air, scatters them to the four winds so each of them fall into a little folder of their own representing the album they might once have come from. I don't keep whole albums. For me the 'album experience' is a ruse to trick one into listening to weaker material. I only keep the concentrated goodness. I only put up with albums in a previous lifetime because in the days of vinyl i had no other choice apart from spending hours compiling mix tapes. Now i am liberated from these restrictions and have been for the 15 or so years i've been using a computer to listen to music. Until along comes iTunes forcing me backwards in time, frog marching me back into the past.
    That simple list i mentioned is my one and only playlist. This single playlist has been evolving for 15 years as tracks are added and removed and their position in the list changes because that song sounds amazing when heard after that other song whereas hearing this song after that song would be like pouring custard over your sausages (for me shuffling is an abomination). And so here is how i've managed this list and managed synchronization of said list and listed files with my mp3 player (currently a Zen).
    Adding a new file: After deciding that song is a keeper i will copy it into that simple folder that holds all my music and drop it in to a position on the list i deem most suited for it. Incidentally over this entire 15 year (i'm pretty sure it's been around that long) my media player has been winamp but for the reason previously mentioned i am unable to use winamp in mac world.
    Removing a file: fortunately winamp has an option to simultaneously remove a file from the list and the hard drive. And naturally so because after all if i no longer like a song then i want it expunged completely from life or at least from my hard drive and playlist. In the brave new world of iTunes i have to remove from the list there then delete the file from where iTunes copied it from and then the place iTunes copied it to.
    Editing the list: drag an item in the list to it's preferred location and select to save it as i would for any other file using any other application... well desktop type application as opposed to one that uses a database as its primary means of storage.
    Syncing with the mp3 player: copy drag drop playlist file from the simple folder on the hard drive to the simple folder on the mp3 player as i would for any other file. And then also copy drag drop the most recently created files from simple folder on hard drive to simple folder on player after having ordered them by creation date so as to make it easier to select the most recently created. After a while the mp3 player will fill up with the files no longer on the list so i will delete all files from player then re-copy all flies from simple folder on hard drive to simple folder on mp3 player.
    I do not make changes to the list on the mp3 player so synchronization needs only to go one way: from laptop to player.
    So all very simple. Apart from editing the positions of files in the list everything is managed by copy drag dropping and deleting files using windows explorer.
    But i'm in a mac and circumstances have forced me in to the corner of using iTunes. And this whole iTunes situation is terrifying for me as over the years i've heard horror stories about it deleting all of someone's music files. Perhaps this may have been by using the software incorrectly but even so, the very fact that it appears possible for this to happen simply by using the software incorrectly and the fact that it happens with some degree of frequency given the number of reports of this happening that i have heard of over the years on music discussion forums fills me with dread that i have to now use this software. And given the software's blatant disregard for the user's choice as to where to store his/her files it's no surprise that this happens. The software is pointlessly doing dangerous things with my data. Please make it stop.
    Please can i just at the very least make iTunes play the music from the folder i have chosen to put my files in and not copy those files here there and everywhere without my say so? Thankyou.

    option discovered in preferences. Really this and any feature that moves deletes or edits a users data should as far as possible be OFF BY DEFAULT. It shouldn't by default and without the users specific say do this dangerous and unnecessary thing without even letting the user know what it's doing!!! And then cause me a few hours (as i'm new to mac) searching for the option so as to switch it off. If i hadn't noticed the status cage declaring that it was copying files then i might never have twigged that this insane thing was occurring. And if i hadn't of noticed i would have been left maintaining the contents of the folder i copied the files to, the folder which as far as i was informed and so believed was also the location of the music files i was playing. How does Apple justify this 'genius' piece of software non-design? Surely it will hurt no one if this was off by default for new users - overall at least i dare say it would cause a lot less distress in the future for the unsuspecting public at large. Thanks for the support.

  • How do I make iCloud work between my Mac and my iPhone as suggested in the video's on Apple's website ?

    I'm trying to share a set of Numbers projects between my MacBook and my iPhone.
    I notice that iWork.com does NOT do what I am expecting from the Apple Video's : it only allows me to consult documents through Safari, but not to open one directly from iCloud.com in the appropriate app for editing ...
    Through file sharing in iTunes it seems to work for one of the projects ... but another project which has multiple tabs and rather long tables doesn't open on my iPhone due to "unknown error" ...
    Even then, the iTunes file sharing process can hardly be called seemless, and in no way even approaches what is suggested in the video's :
    The video's suggest that when working on a file on one device, then picking up another device the file will show the changes ...
    In reality here's what I have to do to make a change on the file on my Mac, share it with the iPhone, then change something on the iPhone and share it back with my Mac :
    1. save the changes to the document
    2. add the document to iTunes file sharing
    3. sync my iPhone
    4. open Numbers on my iPhone
    5. add the document from iTunes
    6. open it
    7. make a change
    8. sync the iPhone
    9. choose "save as ..." in iTunes to overwrite the copy on my Mac
    10. open the document in Numbers on the Mac
    Guess what ... when making a new change, I have to go back in iTunes, delete the link to the document and add the document again in order to be able to share the change ...
    I would expect the syncing with iTunes to at least take care of the file updating on the respective copies on Mac and iOS device ... apparently not so.
    Anyone knows how to really make Documents In The Cloud work ?

    Oops, I forgot a step between 7 and 8 ... before syncing the iPhone I need to explicitly send the document back to iTunes on the iPhone, or the changes won't come over at all ...
    and then one more thing ... Numbers on iOS does NOT recognize a number of key features of the OSX app, such as conditional formatting ... so after editing my document on iOS and syncing it back to OSX on my Mac, all of those settings are lost (no more conditional formatting, have to do it all over again)
    What am I doing wrong ?

  • How can I make it so that my songs don't go on her iPod and her songs ....

    Me and my mother just got iPods for christmas and hers was a U2 ipod and mine was a 30gb ipod. I have downloaded some songs and have imported some cds but my mother doesn't want those songs on her ipod. How can I make it so that my songs don't go on her iPod and her songs don't go on mine.Do i need to create another itunes?

    The computer can tell the difference between your two iPods. When you first plugged each one in, you named them and the computer recognizes each one as a separate disk.
    Now, when you plug in your iPod, and you are looking in iTunes at your iPod contents, you will see four buttons in the bottom right corner of iTunes - the first one is to display iPod options. Click on this, and under the music tab, select "Automatically update selected playlists only". Then, you scroll through your playlists and select only those you want to be transferred to your iPod. Your mother can do the same thing. Now you can each make your own playlists from the same music library, and only those songs you want to go onto your iPod will transfer when you plug it in. You can make the same selections for all the other options too (video, podcats. photos, etc), so that you only have to have what you want on each iPod.
    I have two iPods, a new 5g video iPod and an ancient 1g iPod, and have no problems syncing each of them with different playlists and options.

  • How do I make this code generate a new pro when the "NEXT" button is pushed

    How do I make this code generate a new set of problem when the "NEXT" Button is pushed
    * To change this template, choose Tools | Templates
    * and open the template in the editor.
    /* Figure out how to create a new set of problms
    * Type a list of specifications, include a list of test cases
    * DONE :]
    package javaapplication1;
    import java.awt.GridLayout;
    import java.awt.Window;
    import javax.swing.*;
    import java.awt.event.*;
    * @author Baba Akinlolu -
    class Grid extends JFrame{
        int done = 0;
        final int score = 0;
        final int total = 0;           
            //Create Panels
            JPanel p2 = new JPanel();
            JPanel p3 = new JPanel();
            final JPanel p1 = new JPanel();
            //Create Radio buttons & group them
            ButtonGroup group = new ButtonGroup();
            final JRadioButton ADD = new JRadioButton("Addition");
            final JRadioButton SUB = new JRadioButton("Subtraction");
            final JRadioButton MUL = new JRadioButton("Multiplication");
            final JRadioButton DIV = new JRadioButton("Division");
            //Create buttons
            JButton NEXT = new JButton("NEXT");
            JButton END = new JButton("End");
            //Create Labels
            JLabel l1 = new JLabel("First num");
            JLabel l2 = new JLabel("Second num");
            JLabel l3 = new JLabel("Answer:");
            JLabel l4 = new JLabel("Score:");
            final JLabel l5 = new JLabel("");
            JLabel l6 = new JLabel("/");
            final JLabel l7 = new JLabel("");
            //Create Textfields
            final JTextField number = new JTextField(Generator1());
            final JTextField number2 = new JTextField(Generator1());
            final JTextField answer = new JTextField(5);
        Grid(){
            setLayout(new GridLayout(4, 4, 2 , 2));
            p2.add(ADD);
            p2.add(SUB);
            group.add(ADD);
            group.add(SUB);
            group.add(MUL);
            group.add(DIV);
            p2.add(ADD);
            p2.add(SUB);
            p2.add(DIV);
            p2.add(MUL);
            //Add to panels
            p1.add(l1);
            p1.add(number);
            p1.add(l2);
            p1.add(number2);
            p1.add(l3);
            p1.add(answer);
            p1.add(l4);
            p1.add(l5);
            p1.add(l6);
            p1.add(l7);
            p3.add(NEXT);
            p3.add(END);
            //Add panels
            add(p2);
            add(p1);
            add(p3);
            //Create Listners
            Listeners();
    void Listeners(){
          NEXT.addActionListener(new ActionListener() {
          public void actionPerformed(ActionEvent e) {
             int answer1 = 0;
             //Grab the numbers entered
             int numm1 = Integer.parseInt(number.getText());
             int numm2 = Integer.parseInt(number2.getText());
             int nummsanswer = Integer.parseInt(answer.getText());
             //Set the score and total into new variabls
             int nummscore = score;
             int nummtotal = total;
             //Check if the add radio button is selected if so add
             if (ADD.isSelected() == true){
                 answer1 = numm1 + numm2;
             //otherwise check if the subtract button is selected if so subtract
             else if (SUB.isSelected() == true){
                 answer1 = numm1 - numm2;
             //check if the multiplication button is selected if so multiply
             else if (MUL.isSelected() == true){
                 answer1 = numm1 * numm2;
             //check if the division button is selected if so divide
             else if (DIV.isSelected() == true){
                 answer1 = numm1 / numm2;
             //If the answer user entered is the same with th true answer
             if (nummsanswer == answer1){
                 //add to the total and score
                 nummtotal += 1;
                 nummscore += 1;
                 //Convert the input back to String
                 String newscore = String.valueOf(nummscore);
                 String newtotal = String.valueOf(nummtotal);
                 //Set the text
                 l5.setText(newscore);
                 l7.setText(newtotal);
             //Otherwise just increase the total counter
             else {
                 nummtotal += 1;
                 String newtotal = String.valueOf(nummtotal);
                 l7.setText(newtotal);
      //Create End listener
    END.addActionListener(new ActionListener() {
          public void actionPerformed(ActionEvent e) {
            // get the root window and call dispose on it
            Window win = SwingUtilities.getWindowAncestor(p1);
            win.dispose();
    //new Grid();
    String Generator1(){
         int randomnum;
         randomnum = (1 + (int)(Math.random() * 100));
         String randomnumm = String.valueOf(randomnum);
         return randomnumm;
    public class Main {
         * @param args the command line arguments
        public static void main(String[] args) {
            // TODO code application logic here
            JFrame frame = new Grid();
            frame.setTitle("Flashcard Testing");
            frame.setSize(500, 200);
            frame.setLocationRelativeTo(null);
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setVisible(true);
    }Edited by: SirSaula on Dec 7, 2009 10:17 AM

    Not only are you continuing to post in the wrong forum but now you are multiposting: [http://forums.sun.com/thread.jspa?threadID=5418935]
    If people haven't answered you other posting its probably because we don't understand the question. Quit cluttering the forum by asking the same question over and over and then next time you have a new question post it in the proper forum. Your first posting was moved becuase you didn't post it properly.

  • How to enter text in a TLF textfield through a softKeyboard?

    Hi,
    How to enter text in a TLF textfield through a softKeyboard? (touchscreen keyboard)
    I can set the cursor but there is no text showing up after typing!
    Any ideas?

    It's for the web, so basically every device Flash Player runs on.
    Could be a touch-enabled or physical keyboard.
    Any ideas how to make TLF working across devices?

  • How do I make content in a text field continue onto a new page?

    I am creating a form and one of the pages contains a text field for an essay. I'd like the responses in this text field to carry onto new pages if they reach the end of the first page. How do I make new pages appear with only the continued text field? Thanks!

    All right...
    public class guiClient extends JFrame implements ActionListener {
    static String userString;
    static String currentFont;
    String fontchoice;
    String fontlist;
    static JTextField userName = new JTextField();
    public guiClient() {
         super("My Client");
    public guiClient() {
         super("My Client");
    // Create a ComboBox
    GraphicsEnvironment gEnv = GraphicsEnvironment.getLocalGraphicsEnvironment();
    String envfonts[] = gEnv.getAvailableFontFamilyNames();
    Vector vector = new Vector();
    for ( int i = 1; i < envfonts.length; i++ ) {
    vector.addElement(envfonts);
    JComboBox fontlist = new JComboBox (envfonts);
         fontlist.setSelectedIndex(0);
         fontlist.setEditable(true);
         fontlist.addActionListener(this);
         fontchoice = envfonts[0];     
    //Create a regular text field.
         JTextField textField = new JTextField(10);
         textField.setActionCommand(textFieldString);
         textField.addActionListener(this);
    public void actionPerformed(ActionEvent e) {
    //if the action is from the textfield (e.g. user hits enter)
         if (e.getActionCommand().equals(textFieldString)) {
              JTextField fromUser = (JTextField)e.getSource();
         if (fromUser != null){
    //place user text in editor pane
    //send message to server
                   if (userName.getText() != null) {
                        userString = userName.getText().trim();
                   out.println(userString + ": " + fromUser.getText());
              fromUser.setText("");
         else if (e.getActionCommand().equals(fontlist)){
         JComboBox cb = (JComboBox)e.getSource();
    String newSelection = (String)cb.getSelectedItem();
    currentFont = newSelection;
         userString = currentFont;
    return;

Maybe you are looking for

  • My 10.6 Upgrade and OD Migration plan

    Hi, I wish to share my 10.6 upgrade/migration plan in order to get feedback/comments from people who may have insight/experience doing the same and thus be able to offer advice as to whether my plan is solid or if there's anything I should add/change

  • My EKM Powershot Site won't open in Safari

    I have an iMac.  It is running OS X Yosemite version 10.10.2.  I have an internet website with EKM Powershop.  It worked fine until a few weeks ago.  Then, at some times during the day it said I couldn't log in because of a problem with cookies but a

  • Best Practice for Empty Dataset

    Does Spry know the difference between an empty dataset, a blank xml document and a bad formatted xml document? If so How do I test for empty dataset vs blank xml vs bad formatting? Currently, when no data is available the application returns a blank

  • Hyperion Planning - Failed to sync with user provisioning. Check planning

    Hi All, I'm trying to configure Hyperion Planning to user an external user repository (OID) but when i try to login with an OID user i get the following error : "Failed to sync with user provisioning. Check planning log for details" I'm not hyperion

  • Infotype 0170

    Hi All, Can anybody please suggest a function module where i can pass FSA plan from 0170 and get the costs associated with that plan. Thanks