• 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

Stuck on checkboxes -pleeeeze help

 
Greenhorn
Posts: 22
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Ok-I am doing homework out of a book and the instructions are to display an interface with 5 option buttons in a frame. When clicked, each button changes the background color of the frame. It proceeds to tell me to construct CheckboxGroup, use FlowLayaout and add the Checkboxes to the frame along with ItemListener.
It says addWindowListener()method, write code for itemStateChanged() which uses the getState() method and nested if statements.
--I am so stuck. I hate this book, it does not have any example close to this as to how to do it and I am so so stuck-PLEASE HELP!

 
Sheriff
Posts: 11343
Mac Safari Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Okay, the first thing you want to do is get this to compile. If you keep adding things while there are still errors, you will only compound the problems.

The biggest issue is that your code is mostly inside the static method main, and you're trying to call non-static methods from that context. Remember, in a static (class) context, you can't call non-static (instance) members because there's no way to know which instance you might mean (or even whether an instance exists). You're also trying to reference the instance "this," which (for the same reason) does not exist in a static context.

So my first advice is to move that code outside of main. What you have so far is basically getting a ColorButtons instance ready for use, so a reasonable (or at least convenient) place to put the code might be inside a ColorButtons constructor. Then you could simply use main to call the constructor.

The next issue preventing this from compiling is that your class says it implements WindowListener and ItemListener, but it's not providing implementation for the methods in those interfaces. My advice here is to remove the WindowListener for now, and just work on implementing the ItemListener. Check the API documentation to see what method needs to be implemented for this interface.

Then, when this compiles and you're ready to move forward, go one step at a time. Add a line or two, then recompile to make sure there are no errors. Don't keep adding things until the errors are resolved.
 
Kendra Payne
Greenhorn
Posts: 22
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Thanks, still struggling-all of this is like jibberish to me. Do I need to import javax swing and JFrame for this?
 
marc weber
Sheriff
Posts: 11343
Mac Safari Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Kendra Payne:
...Do I need to import javax swing and JFrame for this?


Are you familiar with the API documentation?
  • The upper left frame lists packages. The default is "All Classes," which is probably best for now.
  • The lower left frame lists the contents of the package selected in the upper left frame. (Again, "All Classes" is good.)
  • The large frame on the right displays what's selected in the lower left frame.
  • So, for example, clicking on "JFrame" in the lower left frame displays the documentation for JFrame. At the top, you will see that JFrame is a class in the javax.swing package. So if you wanted to use JFrame, you would need to import javax.swing.JFrame.
     
    My previous laptop never exploded like that. Read this tiny ad while I sweep up the shards.
    a bit of art, as a gift, the permaculture playing cards
    https://gardener-gift.com
    reply
      Bookmark Topic Watch Topic
    • New Topic