Programming Forums

Programming Forums (http://www.programmingforums.org/forumindex.php)
-   Java (http://www.programmingforums.org/forum17.html)
-   -   Clearing the input box (http://www.programmingforums.org/showthread.php?t=13666)

357mag Jul 31st, 2007 12:57 AM

Clearing the input box
 
I don't know if any of you guys have used Netbeans or Java Studio Creator, but I'm experimenting with both. I've got this program that inputs two integers, computes the sum, and displays the result:

:

public class HelloWorld
{
    public static void main(String[] args)
    {
        Scanner input = new Scanner(System.in);
       
        int x;
        int y;
       
        System.out.println("Enter a value for x: ");
       
        x = input.nextInt();
        System.out.println("Enter a value for y: ");
        y = input.nextInt();
       
        int sum = x + y;
       
        System.out.println("The sum is: " + sum);             
    }
}


What I can't figure out is every time I re-run the program, the previous integer is still sitting in the input box. Let's say I run the program and the first integer I enter is 3. Then I hit the Enter key to send it along. Then for thte second integer I hit 9. Then I hit the Enter key to send it along. The program displays 12 and I'm done.

Now I want to run the program again, and when I hit the Run button, the number 9 is still sitting in the input box. This is quite annoying. It shouldn't be there. Seems to me when you re-run the program the box should be clear, ready to accept new input.

By the way, this is not a GUI program, this is a console program. But there is a long input box on the bottom of the IDE window when you write a program that uses a scanner to get input from the keyboard.

357mag Jul 31st, 2007 1:09 AM

Well I think I may have found a way to fix it. If I go into the Build menu before each new run, and hit Clear and Build, then re-run the program it seems to work.

But you know if you remove the println statements and change them to just print, it doesn't show up on the output until the whole program is done. In other words, when you use println("Enter a value for x: ) it will show on the output window:

Enter a value for x:

But if you remove the println and just code it System.out.print("Enter a value for x: ")

That sentence doesn't show up at all in the output window. You can still enter in two values for the variables, but the strings and the result will not show up until the program is completely done executing.

mrynit Jul 31st, 2007 3:00 AM

what IDE are you using? try running the program from console.

357mag Jul 31st, 2007 6:06 AM

The situation happens in both Netbeans and Sun Java Studio Creator. It doesn't happen in JDeveloper or JCreator.

DaWei Jul 31st, 2007 6:28 AM

It's the same problem that was pointed out to you in your "Can't make the Scanner thing work" post. Consequently, the answer is the same.

casesensitive Nov 1st, 2007 9:28 PM

Re: Clearing the input box
 
System.out.flush()


All times are GMT -5. The time now is 10:08 AM.

Powered by vBulletin® Version 3.7.0, Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Copyright ©2007 DaniWeb® LLC