Hi !
Featured games (84)
games approved by the League of Dukes
Games in Showcase (602)
Games in Android Showcase (171)
games submitted by our members
Games in WIP (649)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  animated selection border  (Read 1254 times)
0 Members and 1 Guest are viewing this topic.
Offline jayhg99

Senior Newbie

Java games rock!

« Posted 2004-10-14 12:03:36 »

Does anyone know how to create an animated selection highlight ?  I do not know what it is called it but it’s very common in window applications.  The one with short black and white lines chase each other along the border of a selection. One example can be seen when a cell in Microsoft Excel is marked for copy.

Offline dranonymous

Junior Devvie

Hoping to become a Java Titan someday!

« Reply #1 - Posted 2004-10-14 16:51:10 »

Are you using Swing?

Dr. A>
Offline jayhg99

Senior Newbie

Java games rock!

« Reply #2 - Posted 2004-10-14 17:27:40 »

Yes, I'm using swing.

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline dranonymous

Junior Devvie

Hoping to become a Java Titan someday!

« Reply #3 - Posted 2004-10-14 20:40:03 »

One suggestion would be to make an animation thread.  If you only need one object to have an animated border, then you could make the thread a member of the class.  If you need multiple things, you have to decide if they will animate together or only one at a time.

The threads only real job will be to call repaint() over and over.

public void run() {
     for(; ;) {
          Thread.yield();  // Play nice with the others
          try{ Thread.sleep(100);
          } catch (InterruptedException ie) {}

You would override the paintComponent(Graphics g) method of your swing object.

The above code could go in the swing object or in the thread class.  If you only have one thing to update, then you can just put the method in the swing object and make the thread a local variable as well.  The yield and sleep are a little redundant, so you could just nix one of them, but not both.

If you need to pause your animation, you'll need to add some way of telling the thread to do so.  One way is to make a pause flag.  A method such as pause() on the thread object would set this flag to true.  The above run() method would check if the flag were true and if so, the thread would do a wait() call.  You'll need to go read up on threads to get things set properly.  If you look at the javadoc, there is a link to a thread article under the Thread class.

Dr. A>
Pages: [1]
  ignore  |  Print  
You cannot reply to this message, because it is very, very old.

Jesse (15 views)
2015-07-29 04:35:27

Riven (37 views)
2015-07-27 16:38:00

Riven (18 views)
2015-07-27 15:35:20

Riven (21 views)
2015-07-27 12:26:13

Riven (12 views)
2015-07-27 12:23:39

BurntPizza (30 views)
2015-07-25 00:14:37

BurntPizza (41 views)
2015-07-24 22:06:39

BurntPizza (24 views)
2015-07-24 06:06:53

NoxInc (31 views)
2015-07-22 22:16:53

NoxInc (18 views)
2015-07-22 22:13:39
List of Learning Resources
by gouessej
2015-07-09 11:29:36

How Do I Expand My Game?
by bashfrog
2015-06-14 11:34:43

List of Learning Resources
by PocketCrafter7
2015-05-31 05:37:30

Intersection Methods
by Roquen
2015-05-29 08:19:33

List of Learning Resources
by SilverTiger
2015-05-05 10:20:32

How to: JGO Wiki
by Mac70
2015-02-17 20:56:16

2D Dynamic Lighting
by ThePixelPony
2015-01-01 20:25:42

How do I start Java Game Development?
by gouessej
2014-12-27 19:41:21 is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!