Jump to content

  • Log In with Google      Sign In   
  • Create Account

FREE SOFTWARE GIVEAWAY

We have 4 x Pro Licences (valued at $59 each) for 2d modular animation software Spriter to give away in this Thursday's GDNet Direct email newsletter.


Read more in this forum topic or make sure you're signed up (from the right-hand sidebar on the homepage) and read Thursday's newsletter to get in the running!


[java] Image displaying


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
12 replies to this topic

#1 Smoo   Members   -  Reputation: 122

Like
Likes
Like

Posted 30 January 2000 - 04:35 PM

Hello, I''m currently working on a small tile-based java game. At the moment, when I load up a map the tiles slowly scroll on screen. I was wondering if it was actually possible to load them up in the background whilst a graphical load window appears with a status bar and when it''s done, the map pops up? Thanks. Smoo

Sponsor:

#2 joeG   Members   -  Reputation: 172

Like
Likes
Like

Posted 30 January 2000 - 05:02 PM

I THINK that that was the whole idea of the ImageProducer/ImageConsumer classes: to ''observe'' the loading of the images. Also you might want to check that you''ve loaded all your images first and then store them in memory so you won''t have to load them again (involves network connections and Internet latency for some).

#3 Jim_Ross   Members   -  Reputation: 122

Like
Likes
Like

Posted 30 January 2000 - 05:15 PM

Not to sure about the progress bar. Check out sun's tutorial on JFC/Swing and look for the JProgressBar component. As for waiting untill the graphics load, you can use a mediaTracker. Make a function called loadImages(). make a new MediaTracker and give it an instance of your program. Then start loading your images, player = Toolkit.getDefaultToolkit.getImage("player.jpg"); then do mt.addImage(player,0); for all your images. And lastly, try mt.waitForAll and catch an interrupted exception. Now all execution will be on hold untill the images are loaded.

Edited by - Jim_Ross on 1/30/00 11:16:38 PM

#4 Niels   Members   -  Reputation: 122

Like
Likes
Like

Posted 31 January 2000 - 02:16 AM

Of course you would need an additional thread if you want to do something fancy while loading...

(And the progress-bar code is not exactly rocket science - unless you are already using Swing, I''d recommend writing your own instead - downloading several Megs of UI library to get a progress bar is a bit crazy)

#5 Captain Goatse   Banned   -  Reputation: 100

Like
Likes
Like

Posted 31 January 2000 - 03:50 AM

Wtf? Downloading swing? I have everything in my JDK 1.2.2 and I don''t need to download enything/every swing component! So does it mean that I *might* not have a progress bar? (I haven''t tried?)

#6 Jim_Ross   Members   -  Reputation: 122

Like
Likes
Like

Posted 31 January 2000 - 07:18 AM

Archon, you have JProgressBar i''m sure.


#7 Niels   Members   -  Reputation: 122

Like
Likes
Like

Posted 02 February 2000 - 03:59 AM

You are not the problem - people trying to use your applet in a standard browser are! (They don''t have JDK1.2.2 by default)

/Nj

#8 Jim_Ross   Members   -  Reputation: 122

Like
Likes
Like

Posted 02 February 2000 - 05:15 AM

I didn''t know applets were involved at all. Speaking of applets, did you hear about the latest security hole in Microsoft''s VM?

#9 Niels   Members   -  Reputation: 122

Like
Likes
Like

Posted 02 February 2000 - 08:50 PM

Oh, sorry! Dumb asumption on my part!

Nope, not heard of any new issues in IE... I found a small one a short time ago though: If you have two applets on the same page, one of which has the "mayscript" tag set, these applets SHOULD be given different VM''s (if they don''t, the applet without the "mayscript" tag will be able to execute scripts through the other applet). IE runs both in the same VM...

/Niels

#10 javanerd   Members   -  Reputation: 122

Like
Likes
Like

Posted 03 February 2000 - 03:14 AM

Niels, that is not a security hole, that is the way it "should" be.

All browser use the same JVM to run applets in the same HTML page. Actually that gives you a nice way to communicate between two applets in one HTML page.

JavaWorld had an article last year describing how you should define class (=static) variables if there are going to be several insances of the class in applets that share a webpage.

#11 Jim_Ross   Members   -  Reputation: 122

Like
Likes
Like

Posted 03 February 2000 - 03:18 AM

Well, it was posted on Javalobby.com and found by a japanese user group. I guess you can access any files in the classpath with an applet. But MS''s VM automagically includes c:\ in the classpath for IE4 and your desktop and registry in IE5. That''s at least what i gather from the original post. There''s an applet in the post that reads files on your desktop, just put a read me there an click read.

#12 Niels   Members   -  Reputation: 122

Like
Likes
Like

Posted 03 February 2000 - 03:39 AM

No, that is NOT the way it is supposed to be. If both applets have the MAYSCRIPT attribute, or none of them has it, then YES, they can run in the same VM... If not, one is providing a scripting loophole for the other... In any case it is a minor issue since it is the author of the page who decides which applets get scripting rights... (My point is, that because of this "bug", the mayscript tag is useless)

/Niels

#13 Niels   Members   -  Reputation: 122

Like
Likes
Like

Posted 03 February 2000 - 03:46 AM

BTW: I use applet communication extensively on www.hexadome.net - this, in fact, is how I discovered the bug. I forgot the MAYSCRIPT tag on one of the applets and all of a sudden it wouldn''t run in Netscape - I figured it was a bug in Netscape (it usually is ), but as it turned out, IE was the problem (And Netscape didn''t throw a security exception as it should have - It sure had me puzzled for a while ...




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS