Poniższy kawałek kodu zaznacza obszar na którym nastąpiło przeciągnięcie(wciśnięcie, przemieszczenie, zwolnienie przycisku) kursora.
Wszytko byłoby dobrze, ale pogrubiona linijka podczas przeciągania powoduje dublowanie koloru, i w efekcie składowa A z 50 zmienia się na 100.
Co zrobić, żeby przeciągnięcie w prawo działało równie dobrze jak to w lewo?
//x0 jest brane z pozycji(X) kursora w momencie wciśnięcia
public static void mousedragged(java.awt.event.MouseEvent evt){
JPanel plot = (JPanel) (evt.getComponent());
Graphics g = plot.getGraphics();
int xd;
int tmpx = evt.getX();
int i=0;
/*w lewo*/
if (tmpx < x0) {
xd = x0 - tmpx;
x0 = tmpx;
g.setColor(new Color(255, 255, 0, 50));
g.fillRect(x0, 0, xd, plot.getHeight() - 1);
}else{
/*w prawo*/
xd=tmpx-x0;
g.setColor(new Color(255, 255, 0, 50));
**g.fillRect(x0, 0, xd, plot.getHeight() - 1);**//tu tkwi problem
}
}