Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Java > thread with MouseListener

Reply
Thread Tools

thread with MouseListener

 
 
devphylosoff
Guest
Posts: n/a
 
      12-22-2006
hej

1.
I have big class extends Frame (electronic clock) and implemented 3
interfaces:WindowListener, ActionListener, MouseListener.

just now I want to add Alarm, which can be closed by any from 2 buttons
clicked by mouse
i think that the best idea is run new thread with countdown to start
alarm (because of avoid alarm check in some states of my clock)

ok, so i will have new thread with countdown
when it reaches 0 alarm function starting and beeper beep through 1
minute or until user press any key (it means : click any button). I
expect MouseListener with my parent class will be sleep in this case.

how write MouseListener in alarm thread?

2.
btw: how use static variable in functions
I receive error while compiling code with that declaration in function
- only in class scope I can do that.

 
Reply With Quote
 
 
 
 
Thomas Hawtin
Guest
Posts: n/a
 
      12-22-2006
devphylosoff wrote:
> I have big class extends Frame (electronic clock) and implemented 3
> interfaces:WindowListener, ActionListener, MouseListener.


I suggest start by refactoring your code into something much simpler.
Bad text books like to extend Frame and implement loads of classes
because it reduces line count slightly. However, it does produce bad
code. There is rarely any need to extend Frame. Use inner classes for
listeners.

BTW: AWT components are very old fashioned. There is little reason not
to use Swing.

> just now I want to add Alarm, which can be closed by any from 2 buttons
> clicked by mouse
> i think that the best idea is run new thread with countdown to start
> alarm (because of avoid alarm check in some states of my clock)


You really want to avoid threads if you can. If you use
javax.swing.Timer, the actions are fired in the same thread as input
events are fired in (the Event Dispatch Thread, EDT).

> ok, so i will have new thread with countdown
> when it reaches 0 alarm function starting and beeper beep through 1
> minute or until user press any key (it means : click any button). I
> expect MouseListener with my parent class will be sleep in this case.


Don't do anything *too* complicated within listener methods. If it
starts to get complicated, or you feel the need to call the listener
methods yourself, have them call another method having extracted any
relevant information from the event object. The interface of the new
method should make sense in the situation it is defined.

> btw: how use static variable in functions
> I receive error while compiling code with that declaration in function
> - only in class scope I can do that.


You can't (well there is a hack to do with local classes). In general,
you should avoid any mutable static. Just place your constants in the
outer class.

Tom Hawtin
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Interface MouseListener Jenny Java 1 08-19-2004 11:05 PM
Newbie MouseListener Problem Cammy Java 2 04-10-2004 06:34 PM
Weird Problem in using MouseListener Minti Java 2 02-19-2004 07:23 PM
MouseListener and hiding components. Peter the Swede Java 0 11-19-2003 10:57 AM
Invoking an action from a MouseListener on a JTable Brian J. Sayatovic Java 1 07-31-2003 04:40 PM



Advertisments