• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

How to move a second object?

 
Greenhorn
Posts: 29
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I have a JFrame with a JPanel.

I have a red square which can be moved around. I now want to add a second square in green which can also be moved around. I have gotten the green square to appear in the position I have set x and y on the panel but it will not allow me to move it.

Any ideas where i'm going wrong would be a big help as i want to add other movable squares after this one.

My code is below:

 
Greenhorn
Posts: 8
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello Steven:

First I would like to note that you have a couple of design problems (too much repeated code, and not following OO principles).

Here is your code with some design corrections (to avoid you MAYOR headaches in the future maintenance), and some notes on what you could do to get the squares moving...




Notes about the Square classes... you had duplicated code for every method of each class (RedSquare and GreenSquare) that is calling for maintenance nightmare in the short run (specially if you'r going to put more squares or other shapes in the app, so I rewrote the code to give you an idea of how you can organize your objects... Notice that i have put every getter/setter (that are common to all Squares) in the Square class, you can improve it further adding a property to the Square class named 'color' and asign it a value in the constructor of the object type you are creating... There are probably hundreds of different ways to do it, so here's mine.

Answering your question, check the comments in the 'mouseEvent' pieces of code.

Hope this helps...
Diego
[ November 11, 2007: Message edited by: Diego Pedrosa ]
reply
    Bookmark Topic Watch Topic
  • New Topic