BlackBerry Forums Support Community

BlackBerry Forums Support Community (http://www.blackberryforums.com/)
-   Developer Forum (http://www.blackberryforums.com/developer-forum/)
-   -   Private variables assignment (http://www.blackberryforums.com/developer-forum/82052-private-variables-assignment.html)

Cycom 06-19-2007 04:29 AM

Private variables assignment
 
Hi.

I have a very strange behavior of my application at 8800 blackberry device.

For some strange reason I could not assign a value to private int class members. At device simulator it works OK.

Can someone take a look and help me?

Thank you,
Rainman

Here is a simplified code:

PenDemo.java
class PenDemo extends UiApplication
{
private PenDemoScreen _screen;

// constructors and so on
//.....

// inner class
private class InputThread extends Thread
{
public void run()
{
//..........
XYPoint[] buffer;
// ......

for (;;)
{
penPoint = new XYPoint(buffer[2], buffer[3]);
xyPoint = new XYPoint();

// in TransformToXY I'm using classes from
// other project in my JDE, but I deploy it into
// devise
TransformToXY(penPoint, xyPoint);

// addPoint will lead to problem
// statement
_screen.addPoint(xyPoint.x, xyPoint.y);
_screen.invalidate(xyPoint.x, xyPoint.y, 1, 1);
}
}
//...
}
}


PenDemoScreen.java

class PenDemoScreen extends MainScreen
{
private DrawArea _drawArea;
//.....

public void addPoint(int x, int y)
{
_drawArea.addPoint(x, y);
}
// .........
}

DrawArea.java
class DrawArea extends BitmapField
{
private int _newX;
private int _newY;
private boolean _pointAdded;

public void addPoint(int x, int y)
{
// here is a problem.
// when I trace this code in simylator, I could see
// correct assignment and _newX and _newY obtains
// there new values.
// at device _newX and _newY has some values and they
// could not been changed they are the same during app
// execution and when I run app next time they could
// have another values.
// The very strange thing that _pointAdded could be
// changed.
this._newX = x;
this._newY = y;
this._pointAdded = true;

}

public void paint(Graphics graphics)
{
graphics.drawLine(10, 10, 234, 568);

if(this._pointAdded)
{
graphics.setColor(Graphics.BLACK);
graphics.drawPoint(this._newX, this._newY);
this._pointAdded = false;
}
}
}


All times are GMT -5. The time now is 09:38 AM.

Powered by vBulletin® Version 3.6.12
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.