Question

public void method1 (int x) {
    if (x == 1) {
        try {
            Robot r = new Robot();
        } catch (AWTException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        r.mouseMove(50,50);

But this gives r cannot be resolved. Any ideas? =/ Thanks a lot

Was it helpful?

Solution

public void method1 (int x) {
if (x == 1) {
    try {
        Robot r = new Robot(); // R is defined in the try block. It is not visible outside of this block.
    } catch (AWTException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    r.mouseMove(50,50); // R is not defined anymore here

Replace it with

public void method1 (int x) {
if (x == 1) {
    try {
        Robot r = new Robot();
        r.mouseMove(50,50);
    } catch (AWTException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

OTHER TIPS

It should be:

public void method1 (int x) {
 Robot r = null;
if (x == 1) {

    try {
         r = new Robot();
    } catch (AWTException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
       return;
    }
    r.mouseMove(50,50);
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top