Images pixelated in iDVD main screen

hi all,
i create an annual dvd with slideshows and videos. this is my 8th one and i've never had this problem before!
i'm using the idvd them "portfolio". when i first started populated the drop zones, everything was fine. the photos i'm using are hi-res and looked great. a few hours into making the video and SOME photos in the drops zones are all blurry and pixelated. i try dropping the photos in again, quitting, restarting, all that good stuff. nothing helped. i then re-exported the photos and put them in a different folder and dropped them into the drop zones. that worked and the photos were back to normal. until i left the main menu screen and some photos became pixelated again. what gives?! it's driving me crazy. i had it perfect and then as soon as i went to burn the dvd, the photos looked bad again.
here are screen shots of when it looks good and then when it doesn't.

It could just be the screen rendering of the images.  Make a disk image of the project and play it with DVD Player.  Check the images again and see if they are clear or blurred.
Follow this workflow to help assure the best qualty video DVD:
Once you have the project as you want it save it as a disk image via the File ➙ Save as Disk Image  menu option. This will separate the encoding process from the burn process. 
To check the encoding mount the disk image, launch DVD Player and play it.  If it plays OK with DVD Player the encoding is good.
Then burn to disk with Disk Utility or Toast at the slowest speed available (2x-4x) to assure the best burn quality.  Always use top quality media:  Verbatim, Maxell or Taiyo Yuden DVD-R are the most recommended in these forums.
OT

Similar Messages

  • How do I get a "PLAY ALL" button on the main screen for iDVD?

    I spent a lot of time creating a DVD with pictures and music, and the main screen when I play the DVD shows all of the different scenes, but when I click on one of the scenes, it won't continue to the next one. I have to individually plan every scene in order to watch the whole DVD, rather than just clicking on the first scene and letting it play through. How do I make it so that I can either create another button that will play the whole DVD through or make it so that it continues to the next scene after the previous one is finished??

    You can't create a 'play all' button with iDVD. All your separate scenes are separate movies as far as iDVD is concerned. You need to assemble all you separate scenes into one movie in iMovie and then insert chapter markers if you want separate entry points.
    Apple's pro DVDSP does let you link movies to obtain a play all function.

  • Using Cap6, need to create menu screen that allows user to click a button, branch to other screens, and return to main menu. When returning to the main screen the button that was clicked will be grayed out or inactive.  How do I do this?  I created image

    I am trying to emulate a piece of equipment.  I need the user to be able to click on specific buttons that will take the user to another screen(s).  After viewing those screens the user will be directed back to the main screen where the user would know which buttons had been pressed and which still needed to be pressed.  I create image buttons with the 3 states - that worked except when the user returns the slide is reset and so the user does not see the 3rd state of the button.  How can I get that 3rd state to stay after user returns to the main screen? 

    Hi Elizabeth,
    Since I just did this morning what you are currently attempting to do, I thought I'd share my method.  I must provide a disclaimer and tell you that I am not an expert in Captivate advanced actions--like you, I am still figuring them out.  However, I am happy to share here anything I have learned thus far.
    First, here is what my initial slide looks like (see interaction slide below).  I created all of the icons (including the 'grayed out' icon on the second screenshot) in a few minutes using Adobe Illustrator. The icons have been imported as custom multi-state buttons so that I could have the desired effect when the user hovers over the image--the yellow 'explore' flag appears only when the mouse is over the icon. When the learner click either image, they are sent to the corresponding slide.  Once both slides are viewed, a 'continue' button will appear at the base of the screen (something I've not figured out--I sent an email to Lieve begging for some guidance). 
    The initial slide (interaction slide):
    Second, here is a depiction of what happens when the learner returns to the interactive slide from the content slide (see image below):  Once the learner visits the 'Battery Content' slide and then returns to the interaction slide, the images have changed.  The multi-state button is hidden (through the advanced action), the replacement image (the image with the completed banner over it) is shown, and a hidden click box to allow the user to return to the previously visited page (just in case they desire to do that) is "shown" to allow navigation since the button is no longer there (because it is magically hidden).
    Content Slide 1:
    Remember, there may be an easier way to do this in Captivate.  I am using Cp6 for this module.
    1. I created two user variables as follows
    Name: v_batteryExplore
    Value: 0
    Name: v_fuelExplore
    Value: 0
    2. I created an advanced action for each as shown below (showing only one--duplicate the first and change the names to match the content):
    Credit: I learned these steps from @Lilibiri and Dr. Pooja Jaisingh!
    I have also noticed that it matters where the buttons are located on the timeline.  It seems best to have buttons above all other content.  Not sure why, but I have had images not appear when I have not done this.
    And the last step you do not want to forget; you need to remember to tell Captivate to use the action.
    As a final note, remember that the elements you do not want to appear on the initial screen must not be initially visible.  Make sure to set them to invisible by removing the checkmark in the 'Visible in output' box located next to the button name.  In my case, the image of the completed battery and the invisible button to allow a revisit of content was initially hidden.  Here is a final screenshot of my timeline for this interaction.  I hope this information helps you!

  • How do I duplicate an image on the main screen so that I can edit it and compare the result with the original?

    In Elements 12 How do I duplicate an image on the main screen (as well as the photo bin) so that i can compare any editing with the original?

    In full Editor, go to Edit>Preferences>General and check "Allow Floating Documents in Full Edit Mode"
    Open the image so that you see it in the project bin
    Right click the image thumbnail in the project bin, and duplicate. It will come in as xxxcopy
    On the Arrange icon at the top, select 2-up. You should see the original and the duplicate in the work area

  • I just downloaded LR and uploaded pictures to edit. The pictures display on the bottom carousel, but when I click on a specific image I want to edit, it won't display on the main screen. Why is it doing that?

    Can anyone advise on how to make the picture you select display on the main screen (Loupe view)?

    Might be hardware failure. Take the iPhone to the nearest Apple store
    for evaluation. Make a Genius Bar appointment to avoid delay at the store.
    Make a Genius Bar Reservation
    http://www.apple.com/retail/geniusbar/

  • Revolution Main Screen Gradient Mask

    I'm authoring a DVD in iDVD 7.1.2 (latest version with iLife '11).  I want to use the Revolution Theme with an image in the overall screen behind the chapter buttons.  Unfortunately for me, the theme has a black gradient mask over the screen and the image that I inserted is extremely dark.  Is there some way to edit the details of the Revolution Main screen?
    Thanks,
    Dave

    There's a menu title which is the rotating text.  Change it and the rotating text will change.
    OT

  • Poor image quality -slideshow iDVD-need help asap

    Hello
    does anybody know how to create a better quality slideshow???? It sim,ply does look totally unprofessional .. when the dvd is burned.
    We have supersharp images .. but once the DVD is burned and you pop it back in the unit .. the images look fuzzy .. and not as crisp as when you actually run them in iPhoto, or iDVD...
    this is really urgent .. I'd appreciate if somebody give us a hint ... what to do .. or is there an alternative to created 100% quality slideshows on a dvd.
    We need to play the burned DVD's on a computer (to show to clients) as well as on a TV .. in case the client wants to view the DVD at home.
    please respond to
    [email protected]
    Thank you!
    I understand that it might look fuzzy on a TV screen .. but why does it look so bad on a computer screen? That is not a good way to present work/images .. please help!

    Don't count on FCE or DVD Studio Pro to be better. I think your issue is with MPEG-2 compression.
    I build my slideshows within iDVD, not iPhoto or iMovie HD. Here's an example:
    Ireland 2004 iDVD Project
    Nearly 800 images dragged into iDVD as organized folders from the hard drive. Transitions on each image, and menus, sub-menus, and sub-sub menus. The sub-menus are created by clicking on the Folder icon on the iDVD interface.
    Main Menu has 6 buttons: Downpatrick, Antrim Coast, Letterkenny, Sligo, Trim, and Extras. Behind each button are additional buttons ranging from 3 to 6 buttons. The Extras button goes fairly deep. When you click on Extras, it gives you 3 choices on a new menu. The "B&Bs" button opens a new menu with 5 buttons. The "Movies" button opens a new menu with 4 buttons. If you click on the "Irish Music" button, you open a new menu with 2 buttons. At that point, you are at a "sub-sub-sub menu."
    Music was on 95% of the slideshows. Some movies converted to QT DV from Canon S400 digicam .AVI files (iDVD 4). Now convert to H.264 with QuickTime 7. Images are original 4MP (2MB) JPEG images from the same digicam. This DVD project is around 4GB with all pictures as DVD-ROM content.
    G4 DP 1.25 GHz 4 Drives 720GB Mac OS X (10.4.4) 2 SuperDrives (SL 8X & DL 16X)

  • Creating an Image from whats already on screen?

    http://carroll1.cc.edu/~tpatters/Scribble.html
    Above is the link to an applet I've been writing for a few days. I'm fairly new to Java and am using this applet to teach myself concepts as I dig them up. Right now when the page is moved, or the application is resized, or anything is drawn over it I lose the image that has been drawn. I'm trying to correct this by creating an offscreen image duplicating what is on screen in mousePressed. How do I grab what has already been drawn as an image? I've tried making it so it initially draws to an offscreen image and drawing that image in mouseReleased, but that doesn't let me see what is being drawn as it is happening. If I draw offscreen and update every iteration is runs horribly slow. I've also tried drawing offscreen and onscreen at the same time, but that too slows everything down.
    Here is the source code, I've been tinkering around all day so it is kinda messy and some things are commented out...
    import javax.swing.border.*;
    import java.awt.*;
    import javax.swing.*;
    import java.awt.event.*;
    import java.util.StringTokenizer;
    public class TPScribble extends JApplet implements AdjustmentListener, ActionListener
         private JLabel lblRed = new JLabel("Red");
         private JLabel lblGreen = new JLabel("Green");
         private JLabel lblBlue = new JLabel("Blue");
         private JScrollBar red,green,blue,size;
         private JButton whiteBack= new JButton("White");
         private JButton currentBack= new JButton("Current Color");
         private JButton info= new JButton("Info");
         private JButton psychoColors= new JButton("Auto-Rainbow");
         private JButton gradient= new JButton("Set Gradient");
         private JButton drawG=new JButton("Draw Gradient");
         private JButton redraw=new JButton("Redraw");
         private int r,gr,b, intsize=16, undoCounter=0;
         private TitledBorder titleBorder = new TitledBorder("Color Chooser");
         private Color color = new Color(128,128,128);
         boolean cycle = false;
         boolean setGrad = false;
         private int cycleRed, cycleGreen, cycleBlue;
         private int[] gradientStart = new int[3];
         private int[] gradientEnd = new int[3];
         private Graphics offscreen;
         //private Dimension dimension = new Dimension();
         private Image image;
         private Image[] undoImage = new Image[5];
         ScribblePanel scribblePanel = new ScribblePanel();
         Brush brush = new Brush();
    public static void main(String[] args)
    JFrame frame = new JFrame("TP Scribble");
    TPScribble applet = new TPScribble();
    frame.getContentPane().add(applet, BorderLayout.CENTER);
    applet.init();
    applet.start();
    frame.setSize(800, 640);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setVisible(true);
    public void adjustmentValueChanged(AdjustmentEvent e)
         r=red.getValue();
         cycleRed=r;
         gr=green.getValue();
         cycleGreen=gr;
         b=blue.getValue();
         cycleBlue=b;
         intsize=size.getValue();
         lblRed.setText("Red ("+(r+1)+")");
         lblGreen.setText("Green ("+(gr+1)+")");
         lblBlue.setText("Blue ("+(b+1)+")");
         color = new Color(r,gr,b);
         cycle=false;
         brush.updateBrush(color,intsize);
    public void actionPerformed(ActionEvent e)
         if (e.getSource()==whiteBack)
              scribblePanel.setBackColor(Color.white);
         else if (e.getSource() == currentBack)
              scribblePanel.setBackColor(color);
         else if (e.getSource() == info)
              JOptionPane.showMessageDialog(null, "Created by Thom Patterson\n\nLeft Click - Paint Brush\nRight Click - Draw Line\nShift + Left Click - Draw Line","Information",JOptionPane.INFORMATION_MESSAGE);
         else if (e.getSource() == psychoColors)
              int choice = JOptionPane.showConfirmDialog(null, "This will automatically cycle your\ncolors until a slider is moved\n\nProceed?", "Info",JOptionPane.YES_NO_OPTION);
              if (choice==0)
                   cycle=true;
         else if (e.getSource() == gradient)
         {boolean valid = false;
               boolean inside = true;
               do
               inside=true;
               String startGradient = JOptionPane.showInputDialog("Enter Starting Color as an r,g,b value\n\nColor Values lie between 0 and 255\n\nExample: 120,255,17");
               String endGradient = JOptionPane.showInputDialog("Enter Ending Color as an r,g,b value\n\nColor Values lie between 0 and 255\n\nExample: 120,255,17");
               StringTokenizer startToken = new StringTokenizer(startGradient, ",");
               StringTokenizer endToken = new StringTokenizer(endGradient, ",");
               for (int c=0; c<3 ; c++)
                    gradientStart[c]=Integer.parseInt(startToken.nextToken());
              for (int c=0; c<3 ; c++)
                   gradientEnd[c]=Integer.parseInt(endToken.nextToken());
              for (int c=0; c<3; c++)
                   if (gradientStart[c]>255 || gradientStart[c]<0 || gradientEnd[c]>255 || gradientEnd[c]<0)
                   JOptionPane.showMessageDialog(null, "Your numbers were invalid, try again","Error",JOptionPane.INFORMATION_MESSAGE);
                        inside=false;
              if (inside==true)
                   valid=true;     
                   setGrad=true;
              while (valid==false);
         else if (e.getSource()==drawG)
              if (setGrad == false)
                   JOptionPane.showMessageDialog(null, "Please set a Gradient first","Error",JOptionPane.INFORMATION_MESSAGE);
              else if (setGrad == true)
                   scribblePanel.drawGradient(gradientStart, gradientEnd);
         else if (e.getSource()==redraw)
              //scribblePanel.update();
    public void init()
         red = new JScrollBar(0,128,1,0,255);
         green = new JScrollBar(0,128,1,0,255);
         blue = new JScrollBar(0,128,1,0,255);
         size = new JScrollBar(1,16,1,1,50);
         JPanel p1 = new JPanel();
         p1.setLayout(new GridLayout(1,3));
         p1.setBorder(titleBorder);
         JPanel p2 = new JPanel();
         p2.setLayout(new BorderLayout());
         p2.add(new JLabel("Size"), BorderLayout.NORTH);
         p2.add(size, BorderLayout.CENTER);
         JPanel p3 = new JPanel();
         p3.add(info);
         p3.add(whiteBack);
         p3.add(currentBack);
         p3.add(gradient);
         p3.add(drawG);
         p3.add(redraw);
         JPanel p4 = new JPanel();
         p4.setLayout(new GridLayout(4,1));
         p4.add(lblRed);
         p4.add(lblGreen);     
         p4.add(lblBlue);
         p4.add(new JLabel("Cycling Colors"));
         JPanel p5 = new JPanel();
         p5.setLayout(new GridLayout(4,1));
         p5.add(red);
         p5.add(green);
         p5.add(blue);
         p5.add(psychoColors);
         p1.add(p4);
         p1.add(brush);
         p1.add(p5);
         red.addAdjustmentListener(this);
         green.addAdjustmentListener(this);
         blue.addAdjustmentListener(this);
         size.addAdjustmentListener(this);
         whiteBack.addActionListener(this);
         currentBack.addActionListener(this);
         info.addActionListener(this);
         psychoColors.addActionListener(this);
         gradient.addActionListener(this);
         drawG.addActionListener(this);
         redraw.addActionListener(this);
         getContentPane().add(p1, BorderLayout.SOUTH);
         getContentPane().add(p2, BorderLayout.EAST);
         getContentPane().add(p3, BorderLayout.NORTH);
         getContentPane().add(scribblePanel, BorderLayout.CENTER);
    class ScribblePanel extends JPanel implements MouseListener, MouseMotionListener
    {      private Point lineStart = new Point(0, 0);
         private Graphics z,gg;
         public ScribblePanel()
              addMouseListener(this);
              addMouseMotionListener(this);
         public void setBackColor(Color xcolor)
              z = getGraphics();
              z.setColor(xcolor);
              z.fillRect(0,0,getWidth(),getHeight());
              z.dispose();
         public void drawGradient(int[] starter, int[] ender)
              setBackColor(Color.white);
              int delta = (int)(getWidth()/255);
              z=getGraphics();
              cycleRed=ender[0];
              cycleGreen=ender[1];
              cycleBlue=ender[2];
              r=starter[0];
              gr=starter[1];
              b=starter[2];
              for (int c=0;c<getWidth();c+=delta)
                   color = new Color(r,gr,b);
                   z.setColor(color);
                   z.fillRect(c,0,delta,getHeight());
                   if (r==cycleRed)
                   else if (r<cycleRed)
                   {r++;}
                   else if (r>cycleRed)
                   {r--;}
                   if (gr==cycleGreen)
                   else if (gr<cycleGreen)
                   {gr++;}
                   else if (gr>cycleGreen)
                   {gr--;}
                   if (b==cycleBlue)
                   else if (b<cycleBlue)
                   {b++;}
                   else if (b>cycleBlue)
                   {b--;}
              z.dispose();
         public void mouseClicked(MouseEvent e)
              image = createImage(getWidth(), getHeight());
              z = image.getGraphics();
              gg=getGraphics();
              if (cycle==true)
                   cycleColor();
              if (e.isMetaDown()|| e.isShiftDown())
                   z.setColor(color);
                   z.drawLine(lineStart.x, lineStart.y, e.getX(), e.getY());
              else
                   z.setColor(color);
                   z.fillOval(e.getX() - (intsize/2), e.getY() - (intsize/2), intsize, intsize);
              lineStart.move(e.getX(), e.getY());
              gg.drawImage(image,0,0,this);
              image = createImage(getWidth(), getHeight());
              offscreen[undoCounter]=image.getGraphics();
              offscreen[undoCounter].fillOval(0,0,100,255);
              undoCounter++;
              if (undoCounter == 5)
                   undoCounter=0;*/
              gg.dispose();
              z.dispose();
         public void mouseEntered(MouseEvent e)
         public void mouseExited(MouseEvent e)
         public void mouseReleased(MouseEvent e)
         public void mousePressed(MouseEvent e)//maybe add undo here...
              lineStart.move(e.getX(), e.getY());
         public void mouseDragged(MouseEvent e)
              //image = createImage(getWidth(), getHeight());
              //z = image.getGraphics();
              gg=getGraphics();
              if (cycle==true)
                   cycleColor();
              if (e.isMetaDown() || e.isShiftDown())
                   // z.setColor(color);
                   //z.drawLine(lineStart.x, lineStart.y, e.getX(), e.getY());
                   gg.setColor(color);
                   gg.drawLine(lineStart.x, lineStart.y, e.getX(), e.getY());
              else
                   //z.setColor(color);
                   //z.fillOval(e.getX() - (intsize/2), e.getY() - (intsize/2), intsize, intsize);
                   gg.setColor(color);
                   gg.fillOval(e.getX() - (intsize/2), e.getY() - (intsize/2), intsize, intsize);
              lineStart.move(e.getX(), e.getY());
              //z.drawImage(undoImage[0],0,0,this);
              //gg.drawImage(image,0,0,this);
              gg.dispose();
              //z.dispose();
         public void paintComponent(Graphics g)
              if (image == null)
              else
                   g.drawImage(image,0,0,this);
         public void update(Graphics g)
              repaint();
         public void cycleColor()
              if (r==cycleRed && gr==cycleGreen && b==cycleBlue)
                   cycleRed=(int)(Math.random()*255);
                   cycleGreen=(int)(Math.random()*255);
                   cycleBlue=(int)(Math.random()*255);
              if (r==cycleRed)
              else if (r<cycleRed)
              {r++;}
              else if (r>cycleRed)
              {r--;}
              if (gr==cycleGreen)
              else if (gr<cycleGreen)
              {gr++;}
              else if (gr>cycleGreen)
              {gr--;}
              if (b==cycleBlue)
              else if (b<cycleBlue)
              {b++;}
              else if (b>cycleBlue)
              {b--;}
              color = new Color(r,gr,b);
              brush.updateBrush(color, intsize);
              lblRed.setText("Red ("+(r+1)+")");
              lblGreen.setText("Green ("+(gr+1)+")");
              lblBlue.setText("Blue ("+(b+1)+")");
         public void mouseMoved(MouseEvent e)
    class Brush extends JPanel
    private Graphics l;
         public Brush()
         public void updateBrush(Color bcolor, int bintsize)
              l=getGraphics();
              l.setColor(getBackground());
              l.fillRect(0,0,getWidth(),getHeight());
              l.setColor(bcolor);
              l.fillOval(getWidth()/2 - (bintsize/2),getHeight()/2 - (bintsize/2), bintsize, bintsize);
              l.dispose();

    I made a similar app myself, and here is a snippet from inside the draw method of my custom shape        // draws only last segment if in the process of creating the shape
            if (perm) {
                for (int ndx = 2; ndx < numCoords; ndx += 2) {
                    g2.draw(new Line2D.Float(pointCoords[ndx - 2],
                     pointCoords[ndx - 1], pointCoords[ndx], pointCoords[ndx + 1]));
            else {
                g2.draw(new Line2D.Float(pointCoords[numCoords - 4],
                 pointCoords[numCoords - 3], pointCoords[numCoords - 2],
                 pointCoords[numCoords - 1]));
            }as you can see, I only draw the last little segment while the user is drawing the shape (this keeps it fast), but when it is completed, the draw method will draw the entire thing. By calling the draw method both on mouseDragged and in the paintComponent of the canvas, the desired effect is achieved.

  • Idvd main menu

    I have iDVD in my dock, but when I click on it, all I get is the Revolution Main screen. Help! Also, how do I cancel a movie before finishing?

    Welcome to the forums.
    iDVD is capable of doing some amazing things, but it will take a bit of effort to figure out the process. I bought a couple books when I first started out and that worked for me (David Pogue's "Missing Manual" series was very helpful). Apple also has some good tutorials to get you started:
    http://www.apple.com/findouthow/movies/idvd.html
    http://www.apple.com/findouthow/movies/imovie08.html
    John

  • Apple TV3 Not Showing The Main Screen Icons except Computer

    I tried to do everything that i've read in here..
    I tried to unplug the power cable for 30 seconds and replug it, same problem occurs.
    The Main Screen icons don't appear such as Youtube, Radio, the internet, etc..
    I get the computer and settings icon only...(See picture)
    /___sbsstatic___/migration-images/186/18672415-1.jpg
    The internet is working just fine.. The system is up to date,
    I tried resetting, restarting the system.. nothing worked..
    I bought 2  Apple TV 3's and they both have the same issue..
    Also, when I bought it in the U.S, the sales person in NY-5th Avenue store showed me the languages available, and one of them was the Arabic language..
    Now that I bought it, this language doesn't exist.. Is there a way to add more languages?
    Thanks for your time.

    Welcome to the Apple community.
    Unfortunately, a number of users appear to have encountered this problem. Some of these users have reported that the problem just disappears the following day or shortly after. Other users have found various other solutions to this problem.
    Firstly, are you receiving any date and time errors when you turn on your Apple TV?
    Check that you are properly connected to the Internet, by ensuring that you have a proper IP address and not one starting with 169. Also check that your location for the iTunes Store is set correctly, if so you might try changing it and then changing it back.
    If the problem persists try restarting the Apple TV by removing ALL the cables for 30 seconds, or resetting it using the reset option under general. You should also try restarting your router, or if this doesn't work you might like to try a restore.

  • How do you get back to the main screen?

    How do you get back to the main screen? My little movie screen is not in the top right corner as it usually is... ever since it unexpectedly shut down. I can not edit it anymore and the screen is in the middle and the clips and sound are separated underneath. PLEASE HELP THIS PROJECT IS DUE TOMORROW AND I WAS ALMOST DONE

    my limited experience tells me that different magazines work differently.
    try double clicking the home button and then swiping the magazine image up off the top of the screen

  • What Is The Best Image Pixel Dimensions For iPad 2 Photographs?

    I just purchased an iPad 2 64Gb.  I want to add photographs to my iPad.  I want the photographs to completely fill the screen but still be small enough to use the minimum amount of memory space.  A smaller image size will also make them more responsive when navigating between images.
    Does anyone know the image pixel dimensions that I should use to have the photographs  completely fill the iPad screen?  I am assuming a resolution of 72 pixels per inch is sufficient because the screen is essentially a video screen.
    Thanks!
    Bill

    1024-by-768 is the size of the screen.
    Basic troubleshooting steps  
    17" 2.2GHz i7 Quad-Core MacBook Pro  8G RAM  750G HD + OCZ Vertex 3 SSD Boot HD 
    Got problems with your Apple iDevice-like iPhone, iPad or iPod touch? Try Troubleshooting 101

  • Delay loading images when switching to different screen...

    Hi,
    I got it all to work but there's a ridiculous delay loading images for the next screen. There's only one window, but many different screens represent different states of the program.
    1st screen)This screen using JPanel to display the screen. In this screen, I overrided
    the paintComponent to draw background image. The button is triggered
    by mouseclick event which then tell the next screen to load.
    2nd screen)This screen uses Graphics2D (bufferedImage in the Engine is already
    created)to draw image onto the screen.
    1st Screen code below:
    public class LoginController extends JFrame implements Controller, ImageObserver{
         private GameEngine myEngine;
         private SpeechEngine ttsEngine;     
            private Image login;
         private JPanel main;
         private JTextField nameField;
         private JPasswordField passwordField;
         private class Background extends JPanel implements MouseListener
             private Image login;
             public Background(){
                super();   
                setOpaque(false);
                login = new ImageIcon("gfx/slogin.PNG").getImage();            
             public void paintComponent(Graphics g){
                  Graphics2D g2 = (Graphics2D) g.create();
                g2.drawImage(login, 0, 0, this);
                g2.dispose();
              public void addComponent(Container container, Component c, int x,
                                                          int y, int width, int height) {
                   c.setBounds(x,y,width,height);
                      container.add(c);             
              /* (non-Javadoc)
               * @see java.awt.event.MouseListener#mouseClicked(java.awt.event.MouseEvent)
              public void mouseClicked(MouseEvent event) {
                   int X = event.getX();
                   int Y = event.getY();
                   if (event.getButton() == MouseEvent.BUTTON1 ) {
                        if ( X >= buttonLoginX && X <= (buttonLoginX+buttonWidth)) {
                             if ( Y >= buttonY && Y <= (buttonY+buttonHeight)) {                    
                                  //will add aucthentication
                                  switchView();
                                  myEngine.startMenu();                              
                   if (event.getButton() == MouseEvent.BUTTON1 ) {
                        if (X >= buttonQuitX && X <= (buttonQuitX+buttonWidth)) {
                             if ( Y >= buttonY && Y <= (buttonY+buttonHeight) ) {
                                  System.exit(0);
        } // end Background
          * contructor
          * @param args
         public LoginController() {
              super();
              myEngine = new GameEngine(this, new Student());
              ttsEngine = new SpeechEngine();
              login = new ImageIcon("gfx/slogin.PNG").getImage();
              nameField = new JTextField();
              nameField.setFont(new Font(null, Font.BOLD, 16));
            passwordField = new JPasswordField();
            passwordField.setFont(new Font(null, Font.BOLD, 16));
            startGame();
         public void switchView(){
              this.setContentPane(myEngine);          
         * preset the screen to current width and height
         public void startGame(){
              Background mainLogin = new Background();
              mainLogin.setLayout(null);
            mainLogin.addComponent(mainLogin,nameField,buttonQuitX+5,250,230,30);   
            mainLogin.addComponent(mainLogin,passwordField,buttonLoginX-140,250,230,30);
            //load JFrame          
              this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            this.setContentPane(mainLogin);
            this.setSize(GameEngine.SCREEN_WIDTH, GameEngine.SCREEN_HEIGHT);       
            this.setVisible(true);    
            this.addMouseListener(mainLogin);
            this.validate(); 
            myEngine.init();
            new Thread(myEngine).start();
            new Thread(ttsEngine).start();
         public void gameStep(Graphics2D canvas){
              /*not requires anymore*/          
          * @param Images
         public boolean imageUpdate(Image img, int infoflags,int x,
                                            int y, int width, int height) {          
              return false;
         public void mouseClicked(MouseEvent event) {
              // TODO Auto-generated method stub          
              System.out.println();
          * Main
          * @param args
        public static void main(String[] args) {
             LoginController newGame = new LoginController();       
    }// end LoginController ----------------------------- 2nd screen code ------------------------------------------
    public class PreLessonController implements Controller, ImageObserver {
         private Session curSession;
         private GameEngine curEngine;
         private Image preLesson;
         private boolean initialized;
         public PreLessonController(GameEngine engine, Session s) {
              curEngine = engine;
              curSession = s;
              initialized = false;
              preLesson = new ImageIcon("gfx/preless.PNG").getImage();
         /* (non-Javadoc)
          * @see game.Controller#gameStep(java.awt.Graphics2D)
         public void gameStep(Graphics2D canvas) {  
                               // the image execute but nevers get to the screen with the code below
                               // until I resize the window screen.
              if ( !initialized )
                   canvas.clearRect(0, 0, GameEngine.SCREEN_WIDTH,GameEngine.SCREEN_HEIGHT);          
              canvas.setTransform(AffineTransform.getTranslateInstance(0, 0));
            // prepare for the prelesson screen
              canvas.clearRect(0, 0, GameEngine.SCREEN_WIDTH, GameEngine.SCREEN_HEIGHT + 20);          
              canvas.drawImage(preLesson, 0, 0, this);
              //drawing rectangular for button
              Font tmp = canvas.getFont();
              canvas.setFont(new Font(null, Font.BOLD, 24));          
              canvas.setPaint(Color.RED);
              canvas.drawRect(455, 410, 170, 40);
              canvas.drawString("START GAME", 460, 440);
              canvas.setFont(tmp);
         /* (non-Javadoc)
          * @see game.Controller#mouseClicked(java.awt.event.MouseEvent)
         public void mouseClicked(MouseEvent event) {
              // TODO Auto-generated method stub
              if (event.getButton() == MouseEvent.BUTTON1 && event.getX() >= 455
                        && event.getX() <= 625 && event.getY() >= 410
                        && event.getY() <= 450) {
                   curEngine.startGame();
    } //end prelessonController  I have been working on it for 2 hrs and can't figure out what is wrong. Like I stated above in the code, if I resize the current running window, the 2nd screen just pop up, else, I would wait for long time.
    Please help. Very appreciated.

    anyone?

  • Problem with main screen of firefox

    After the upgrade from firefox 15.0 to firefox 16.0.2 is problem with main screen. At the top of the main screen shows the bar (caption bar of main form) as I win xp and under this caption is caption bar as win 7.
    Firefox is run on the Windows Xp, if will by better, I can send screen but I do not know where is possible add image at this error report....

    I add screenshot. If I make FF update at home (windows 7) is all ok, problem is only at work an Windows XP

  • Screen Saver runs only on Main Screen

    My screen saver, programmed to display a montage of iPhotos on two screens, used to work fine but is now working only on the main screen. The second screen stays black and displays (in white letters), "Looking for pictures..."
    _I have not selected +*Main Screen Only*+ in +Screen Saver+ Preferences._
    If I click on the Test button in +Screen Saver+ Preferences, the screen saver photos appear on both screens, but if the screen saver activates on its own, or if I activate it from a hot corner, the photos appear only on the main screen. Anybody know what's up?

    It's a bug in 10.5.6. What you should do is make export a copy of your photos that you want displayed from iPhoto to a folder. Put that folder wherever you want, probably ~/Pictures
    Then tell the screen saver app to pull the images from there and it will work again on both of your displays. Very annoying.

Maybe you are looking for

  • Dreamweaver 6.1 Update

    I'm attempting to update by my DreamweaverMX (v5.2.2) by installing the Dreamweaver 6.1 update. No luck. When attempting to install it, I get this message: "This folder does not contain Dreamweaver MX." This, dispite the fact that the file marked "Dr

  • My Creative Zen Micro Needs H

    Ok so heres my story, I bought this Black Creative Zen Micro about years ago, Its always worked great for me and never had a problem, then about 2 weeks ago, I wanted to put some somgs on it and when i plugged it into the computer nothing happened? T

  • Dual boot drive - Mountain Lion and Snow Leopard - Correct order to load software /apps?

    Hi I want to create a dual boot drive for Mountain Lion and Snow Leopard as some of my hardware (is not supported in Mountain Lion).  I am happy how to do this, I just want to know if there is a correct way to install software and apps. My plan was t

  • Java to ActionScript

    I have java code which creates and parses xmls and xsds. I need convert this to action script code. Is there any good tool available to convert java to Action Script ? I tried one tool .. It simply changes the syntax. Its not changing any java import

  • Exchange servers and Mavericks Mail

    It loads it when you open the Mail app, but then no new messages will appear in the Exchange inbox while app is open - fetch new mail and the Activity Window show "Synchronizing Inbox" and jsut sits there and waits.. Close the app and reopen - New Ma