Using Thread.currentthread.sleep but not delaying appropriately

Ok, here it goes. Im currently using the thread.sleep method to delay the changing of the text within some labels. I have 3 labels which represent some arrays. I then sort the arrays. Im trying to throw a delay in so that the user can see the changes happen to the array. Although, when I call the wait.millisec(1000) in (the sleep function I threw into its own wait class) it seems that the waiting all happens at the end. I dont see it during the loop to show the arrangement changes within the arrays. I stepped through the code using the debugger, but it doesnt seem to help.
Look in the buttonListener within the FourX class.
* SortTest.java                                   Author:Tim Dudek
   This trivial program tests the insertion sort and selection sort
   subroutines.  The data is then shown graphically.
import javax.swing.JFrame;
import javax.swing.JLabel;
public class SortTest {
   final static int ARRAY_SIZE = 10;  // Number of items in arrays to be sorted.
                                        // (This has to be 10 or more.)
   public static int[] A, B;
   public static JLabel lblOrig, lblSS, lblIS;
   public static void main(String[] args) {
        JFrame frame = new JFrame ("Tim Dudek");
          frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
          FourX display = new FourX();//create the main panel
          frame.setSize(450, 320);
          frame.getContentPane().add(display);
          frame.setVisible(true);  
      A = new int[ARRAY_SIZE];     // Make an array  ints
      for (int i = 0; i < A.length; i++){      // Fill array A with random ints.
         A[i] = (int)(100*Math.random());
         lblOrig.setText(lblOrig.getText() + " "     + A);
lblIS.setText(lblIS.getText() + " "     + A[i]);
lblSS.setText(lblSS.getText() + " "     + A[i]);
B = (int[])A.clone(); // make B an exact copy of A.
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class FourX extends JPanel {
     static final long serialVersionUID = 1L; //eclipse echo problem
     private JLabel lblO, lblI, lblS;
     private JButton sort;
     public FourX(){//JLabel lblOrig,JLabel lblSS, JLabel lblIS){
          setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
          SortTest.lblSS = new JLabel ("");
          SortTest.lblOrig = new JLabel ("");
          SortTest.lblIS = new JLabel ("");
          lblO = new JLabel("Orginal", JTextField.LEFT);
          lblI = new JLabel("Insertion Sort", JTextField.LEFT);
          lblS = new JLabel("Selection Sort", JTextField.LEFT);
          sort = new JButton("Sort");     
          sort.addActionListener(new buttonListener());
          SortTest.lblSS.setFont(new Font("Arial", Font.BOLD, 30));
          SortTest.lblSS.setHorizontalAlignment(JTextField.CENTER);
          SortTest.lblSS.setBorder(BorderFactory.createLineBorder (Color.RED, 3));
          SortTest.lblIS.setFont(new Font("Arial", Font.BOLD, 30));
          SortTest.lblIS.setHorizontalAlignment(JTextField.CENTER);
          SortTest.lblIS.setBorder(BorderFactory.createLineBorder (Color.BLUE, 3));
          SortTest.lblOrig.setFont(new Font("Arial", Font.BOLD, 30));
          SortTest.lblOrig.setHorizontalAlignment(JTextField.CENTER);
          SortTest.lblOrig.setBorder(BorderFactory.createLineBorder (Color.BLACK, 3));
          add(Box.createRigidArea(new Dimension (10, 10)));
          add(lblO);
          add(SortTest.lblOrig);
          add(Box.createRigidArea(new Dimension (10, 10)));
          add(lblS);
          add(SortTest.lblSS);
          add(Box.createRigidArea(new Dimension (10, 10)));
          add(lblI);
          add(SortTest.lblIS);
          add(Box.createRigidArea(new Dimension (10, 10)));
          add(sort);
     private class buttonListener implements ActionListener{
          public void actionPerformed (ActionEvent event){
          // sort A into increasing order, using selection sort
               for (int lastPlace = SortTest.A.length-1; lastPlace > 0; lastPlace--) {
                    Wait.milliSec(50);
               //Find the largest item among A[0], A[1], ... A[lastPlace],
          // and move it into position lastPlace by swapping it with
          // the number that is currently in position lastPlace
                    int maxLoc = 0; // location of largest item seen so far
               for (int j = 1; j <= lastPlace; j++) {
                    if (SortTest.A[j] > SortTest.A[maxLoc])
               maxLoc = j; // Now, location j contains the largest item seen
               int temp = SortTest.A[maxLoc]; // swap largest item with A[lastPlace]
               SortTest.A[maxLoc] = SortTest.A[lastPlace];
               SortTest.A[lastPlace] = temp;
               Wait.milliSec(100);//<------------ waiting???>
               SortTest.lblSS.setText("");
               for (int i = 0; i < SortTest.A.length; i++){
                    SortTest.lblSS.setText(SortTest.lblSS.getText() + " "     + SortTest.A[i]);
               Wait.oneSec();//<------------ waiting???>
               // sort the array A into increasing order
               int itemsSorted; // number of items that have been sorted so far
               for (itemsSorted = 1; itemsSorted < SortTest.B.length; itemsSorted++) {
                    // assume that items A[0], A[1], ... A[itemsSorted-1] have
                    // already been sorted, and insert A[itemsSorted] into the list.
                    int temp = SortTest.B[itemsSorted]; // the item to be inserted
                    int loc = itemsSorted - 1;
                    while (loc >= 0 && SortTest.B[loc] > temp) {
                         SortTest.B[loc + 1] = SortTest.B[loc];
                         loc = loc - 1;
                    SortTest.B[loc + 1] = temp;
                    Wait.milliSec(100);//<------------ waiting???>                    SortTest.lblIS.setText("");
                    for (int i = 0; i < SortTest.B.length; i++){
                         SortTest.lblIS.setText(SortTest.lblIS.getText() + " "     + SortTest.B[i]);
public class Wait {
     public static void oneSec() {
          try {
               Thread.currentThread().sleep(1000);
          catch (InterruptedException e) {
               e.printStackTrace();
     public static void milliSec(long s) {
          try {
               Thread.currentThread().sleep(s);
          catch (InterruptedException e) {
               e.printStackTrace();

Wow, ok. this is extrodinarily confusing. I read the tutorials, but they're not easy to follow.
So, what I did was at the entry point:
public class SortTest implements Runnable {
   final static int ARRAY_SIZE = 10;  // Number of items in arrays to be sorted.
                                        // (This has to be 10 or more.)
   public static int[] A, B;
   public static JLabel lblOrig, lblSS, lblIS;
   public static void main(String[] args) {
        (new Thread(new SortTest())).start();
   public void run(){
        JFrame frame = new JFrame ("Tim Dudek");
          frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
          FourX display = new FourX();//create the main panel
          frame.setSize(450, 320);
          frame.getContentPane().add(display);
          frame.setVisible(true);  
      A = new int[ARRAY_SIZE];     // Make an array  ints
      for (int i = 0; i < A.length; i++){      // Fill array A with random ints.
         A[i] = (int)(100*Math.random());
         lblOrig.setText(lblOrig.getText() + " "     + A);
lblIS.setText(lblIS.getText() + " "     + A[i]);
lblSS.setText(lblSS.getText() + " "     + A[i]);
B = (int[])A.clone(); // make B an exact copy of A.
Ok, as I understand, this creates the initial thread to build the gui. Now you suggest that when the user hits "sort" that a second thread be created to handle the sorting routine.  From what I understand I can only inherit from one class in java.  My buttonListener already implements ActionListener. I obviously cant implement ActionListener and Runnable.  Do you have a suggestion? Maybe a link to an example?
I'm pretty lost. 
Tim                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

Similar Messages

  • Adobe form-Able to post  data using Adobe Reader 9 but not with Adobe Proff

    Hello Guru's
    I am facing one problem with adobe forms.
    We have develoed a adobe form using adobe reader 9.
    Now when user are posting the purchase requistion using the form,they are able to post the data using
    Adobe Reader 9 but not with Adobe Reader professional.
    Can anyone please advice me what can be the problem here.

    Adobe Reader 9 can't save the old FDA forms. FDA must update their forms.

  • Editing a movie that was already cut together without transcoding .h264 footage to proresslt. I want to transcode full clips that are used in the edit, but not any of the leftovers.

    Editing a movie that was already cut together without transcoding .h264 footage to proresslt. I want to transcode full clips that are used in the edit, but not any of the leftovers. Is there an efficient way to this?
    I'm thinking I can convert the files with Compressor and place them in a new folder with their original file names (not sure how to get compressor to do this yet) and then do a major "Reconnect Clip" afterwards.
    Not sure if there's a more efficient way to get all the clips in the timeline to compressor. I want the full files, not a sequence export. I can go through one clip and a time and add the master file. I'd rather not.
    The more automated processes the better.
    Thank you. I'm currently working so I don't have the time to scour the forums. Help or links to help would be greatly appreciated.
    B

    yeah Media reconnect can be an issue.
    Will Media Manager convert files? Another thing I was thinking was to Media Manage the sequence out, copying all the used files to a new folder, and then running that through compressor. But it still leads to a massive reconnect. Fine tuning all those edits would be less involved than re-editing the whole thing, I hope.

  • HT5105 I have been trying to create a multicam clip from two camera's. They sync properly when using the sync feature but not when I use the multicam feature does anyone know what I may be doing wrong?

    I have been trying to create a multicam clip from two camera's. They sync properly when using the sync feature but not when I use the multicam feature does anyone know what I may be doing wrong?

    Probably best if you could post screen shots of the Inspecror window in extended view with a couple of the clips you using for the 2 angles.
    If you have audio from both cameras and have identified them separately, the sync is usually pretty reliable.
    Russ

  • I am wanting to print my iCal calendar, as use it for bookings but not include entries calendar from other people who I've synced with.

    I am wanting to print my iCal calendar, as use it for bookings but not include entries calendar from other people who I've synced with.

    GACU,
    OK, now I think I understand your problem.
    If it is your calendar that is being shared with other users who have been granted editing priviliges, you will not be able to exclude those events from printing.

  • Login on waking from sleep, but not screensaver / sleep display

    Hi all, been trying to get rid of the login from screen saver / sleep display, while keeping the login on waking the computer from sleep. The reason I want to do this is because I frequently use a Hot Corner to sleep the display while listening to music etc, and having to enter a password just to change tracks etc is a pain But obviously I want to keep the password protection when the computer is put to sleep, as it always is when left unattended.
    Anyway, based on initial Googling, I first tackled the problem by installing SleepWatcher from http://www.bernhard-baehr.de/, and adding this line to the global /etc/rc.wake script:
    /System/Library/CoreServices/Menu\ Extras/User.menu/Contents/Resources/CGSession -suspend
    However, this wasn't very satisfactory, because after waking the computer up from sleep, you initially get a normal session, which then suspends after 3 or 4 seconds. During this time you can interact with the session as normal and move windows etc, so it kind of gives you the impression that you don't have to log in, and then you do, so it's a bit clunky, and also doesn't feel very secure.
    I thought I managed to improve the situation by moving the 'suspend' command to SleepWatcher's /etc/rc.sleep script instead of the /etc/rc.wake script - meaning that your session is suspended just before sleep, so it's already suspended when you wake the computer up. But then I noticed an even worse problem - my "Sleep Display" Hot Corner stopped working after SleepWatcher suspended my session!
    Yes that's right, every time the 'suspend' command ran in conjunction with SleepWatcher, my "Sleep Display" Hot Corner got disabled, and didn't get re-enabled until I completely logged out and back in (or rebooted). So I stopped using SleepWatcher, by removing the 'suspend' command from any SleepWatcher scripts, and now Hot Corners work as normal again following successive sleeps.
    So next I thought, maybe I could write an AppleScript that toggles the "Require password..." checkbox in System Preferences, perhaps to use in conjunction with SleepWatcher, so that the checkbox is disabled when the display is put to sleep, and enabled when the computer is put to sleep. I actually got as far as writing an AppleScript that toggled the checkbox, and was about to attempt to integrate it with SleepWatcher...
    ...then I stumbled across an old thread, where they talk about updating plists under com.apple.screensaver, in order to solve a slightly different problem:
    http://forums.macosxhints.com/showthread.php?t=14085
    Despite the thread being a few years old and trying to solve a different problem, the following command sounded hopeful so I thought I'd try it:
    defaults -currentHost write com.apple.screensaver askForPassword -int 0
    ...and lo and behold, it works!
    My mac is now behaving exactly as I want it - prompting for password on wake from sleep in the normal way as it did before, and not prompting when I merely wake the display (or screensaver)!
    This is in conjunction with having the "Require password to wake this computer from sleep or screen saver" checkbox turned ON in System Preferences.
    But the puzzling thing is, why does it work? Is it safe? Are there any side-effects and am I likely to need to re-enable it following software updates? Does it work for anyone else?
    When I query the values under com.apple.screensaver, I get the following... I have no way of telling what the askForPassword value was before I changed it:
    $ defaults -currentHost read com.apple.screensaver
    askForPassword = 0;
    idleTime = 0;
    moduleName = Flurry;
    modulePath = "/System/Library/Screen Savers/Flurry.saver";
    tokenRemovalAction = 0;
    Basically I'm very surprised that a simple one-line command seems to solve the problem, when there are so many threads where people have asked the same question, and either been told it's not possible, or told you need to do weird stuff with SleepWatcher and/or Applescript, which is often incompletely explained, more complex and less effective.
    So, is the one-line askForPassword solution too good to be true?

    Thanks. I think for an office-type environment, it is an unusual requirement.
    But let's not forget, more and more people use their computers in living-room type environments, for tasks such as playing music or watching films on a remote display. You're typically in a much darker ambience, which you don't want that to be shattered by the bright, white glare of a computer screen all the time!
    So you need total control over whether the display is on or off. This has nothing to do with leaving the computer unattended. You're still there, "using" the computer, you're just not necessarily using the display.
    Anyway... you are right, I toggled the "Require password..." setting in System Preferences off and then on again, and the "askForPassword" plist value changed itself to 1.
    However... the behaviour of my mac has not changed. It behaves the way I want it (prompt for password on waking the compuer, but not on waking only the display), regardless whether the value of askForPassword is 0 or 1.
    Even after rebooting.
    Strange... what have I done?

  • REFInd stuck but works using UEFI Shell v1 (but not v2) [FIXED]

    Hi,
    First ArchLinux install and it gets problematic. I've followed the Beginner's guide and am now in the following situation.
    rEFInd get stuck on:
    rEFInd - Booting OS
    Starting vmlinuz-arch.efi
    Using load options 'root=/dev/sda5 ro rootfstype=ext4 add_efi_memmap initrd=\EFI\arch\initramfs-arch.img'
    The \EFI\arch\refind_linux.conf contains the following line:
    "Boot" "root=/dev/sda5 ro rootfstype=ext4 add_efi_memmap initrd=\EFI\arch\initramfs-arch.img"
    Interestingly, when I start it from the UEFI shell (from the arch installation cd) it works with the v1 but not the v2 !?
    What did I overlook?
    edit: initrt was a typo… sorry.
    Last edited by greut (2013-03-27 18:10:53)

    greut wrote:
    srs5694 wrote:Second, try simplifying your command line. The "rootfstype=ext4 add_efi_memmap" options are probably unnecessary, so removing them (at least for testing) is desirable.
    Yep, I can boot using only:
    vmlinuz-arch.efi root=/dev/sda5 ro initrd=\EFI\arch\initramfs-arch.img
    But still, it works with the UEFI Shell v1 from the liveUSB but not using the shell v2 or via rEFInd directly.
    Is there any particular reason you need those options? If not, just leave them out and call it fixed. If you care to do more investigation, though, I'd be interested in knowing which of those two options is causing problems -- or perhaps if only the combination of both of them is causing problems. If either alone works but not both, then I'm inclined to suspect there's a problem with the length of the options line, although that seems odd, since I'm pretty sure I've tested with long options lines in the past with no sign of trouble.
    I also can't help but wonder if this might somehow be related to the problem being discussed in this thread, which also has a bug report here. That seems to be a problem with specific kernels, but it's conceivable that there's an interaction between kernels and some other unknown factor.
    FWIW, I just did a quick scan of the most relevant section of the rEFInd code and I didn't spot anything suspicious about how it's handling those strings. In fact, it's using allocated memory rather than fixed character arrays, so a hard limit caused by a string of length x seems to be unlikely as a cause unless it were in the kernel's EFI stub loader -- and then you wouldn't see the difference based on the boot manager type (EFI shell v.1 vs. EFI shell v.2 vs. rEFInd).

  • Ask for password after sleep but not after screen saver

    Hi guys!! I have been using a mid 2009 Macbook pro since mid 2009 and obviously am thoroughly satisfied!! I have OS 10.7.4 Lion.
    A small glitch that has been nagging me lately is that I have my screensaver set to on before my book goes to sleep. But I don't want it to ask for a password after it comes back from the screensaver. I want it to ask for password only when it comes back from sleep coz I don't shut the system down more than once a month, so only flip the screen shut when my day ends.
    So essentially is there a way I can make it as for a password ONLY after it wakes from sleep and NOT after screensaver?

    I'm not entirely in love w/ the idea of having to move all my data over to the other account. I might just deal w/ not having the screen saver ask for the pass. One other bit of info that may be helpful: This is the second time having this problem. The first time, it got fixed after the most recent intel osx update. I figured that apple had found a bug and fixed it. Then, w/o shuting down my comp, it failed to ask again. Is there any applications that could be messing this up? Any widgets that might do it?? If not, is there any apps that can switch all my pics/movies, etc over to the other account?

  • I can no longer login to receive my webmail with a second email address; i have already cleared my "saved passwords" and cleared my history, and still i can only login using one email address but not my second one, which i previously was able to do

    details are listed in the question; i login using one email address to this site but not my second, which i have always been able to do
    The error message is:
    Login failed because your username or password was entered incorrectly.
    However, all my login information is correct.

    try the hints found at
    http://support.apple.com/kb/TS1417

  • Websites will convert to a PDF using Adobe Acrobat 9 but not Adobe Acrobat XI

    Hello,
    We have noticed that there are several websites that can be concerted into a PDF using Adoble Acrobat 9, but do not work with Adobe Acrobat XI. An example is the website http://amseventsubc.com/. This site converts with no problems using Adobe Acrobat 9, but will not work with Adobe Acrobat XI. When one tries to convert the website (by going Create > PDF from Web Page > Capture Multiple Levels > Get entire site > Create) it starts to work for about 10 minutes but then stops and crashes the program.
    Does anyone have a suggestion for how to fix this problem?
    Is there any reason why a website would work in an older version of Acrobat and not the most recent?
    Thanks for your help!

    Hi, we are actually not looking to have active links but rather to have the content from each link saved as part of the PDF (We are looking to convert the entire website's content to PDF). On Adobe X you can normally append any link so that its content will be converted and added to your PDF, however, this can't be done with XML links. 

  • TS3276 Anyone experiencing problems sending mail using TalkTalk - can receive but not send  - was ok up until pm 24/08/12 - have recently loaded Mountain Lion patch could this be the problem?

    Anyone experiencing problems sending mail using Apple Mail viaTalkTalk - can receive but not send  - was ok up until pm 24/08/12 - have recently loaded Mountain Lion patch could this be the problem?

    jag157 wrote:
    "I managed to solve the problem. Under smtp settings (mail preferences/accounts/edit smtp) I set the outgoing port to 25 (as recommended by Talktalk), no authentication (set to none) and unchecked SSL. I found that until I set the port to 25 and authentication to none I was unable to uncheck SSL. One I had done this I was able to send from my main email and other email adddresses set up under my account."
    Superb advice R&W!  My email sending block using TalkTalk started 2 months ago using Snow Leopard, continued when I upgraded to 10.8.2, and has been persistent on my wife's new iPad (IOS 6.1).  Implementing your wise words has fixed all that, and now enables me to call her on FaceTime — previously only she could call me.  Thank you so much; this will save hours of further fruitless searching and phoning.
    Please remember that your email is now insecure, if you wish to have a secure connection SSL must be on and port 25 should be avoided.

  • Mac Pro screen will sleep but not the HD!?  ..could it be 10.5.6..?

    Hello Wonderful People..
    I've have recently discovered that my Mac Pro will sleep but only the screen,not the HD!? If I'm correct, this might have only started since updating to 10.5.6, but I'm not entirely sure!
    Any ideas..?

    ..can't find a way to delete this post! All magically is ok again..?

  • Data plan used if MiFi connected but not actively being used?

    If computer is on overnight but not in use, meaning MiFi connected, with that use up my data plan? Or does it use up with "active" use only? I'm sharing internet with other people so I'm not sure my data plan is being used on purpose or just getting eaten up while we are all asleep? I'm already maxed with 3 weeks to go!!!

    As long as you have devices connected to the MiFi there is always a risk that those devices will consume data behind the scenes without your knowledge.  This is how network connected devices work, they are constantly "in use" while connected.  Computers, smart phones and any kind of internet connected devices are constantly backing up content, looking for updates and talking to other network devices.  It has nothing to do with your active participation and all internet communication is held against you on your data plan.
    The only way to completely stop data usage is to turn off your MiFi when it is not needed.  This is a common safe practice that you should start using when on a metered data plan.  MiFis are not intended to be left on 24x7 anyways, frequent reboots will help ensure the device stays in proper working order and increase the longevity of its life.
    Verizon does provide everyone with a data log.  The data log will provide you with time stamps and the amounts that are consumed at those times.  It should be easy to see when your biggest spikes of consumption are.  Isolate what devices are online during those times and what may have been going on and you can start to build a picture of where the problem lies.
    To truly see the network traffic in terms of specific applications, web services or devices you need to find and install network monitors.  Network monitors come in a variety of applications so you need to find and build a monitoring system that fits your environment.  Considering you have other people connected to your MiFi it would not be uncommon for each of you to install a separate monitor specific to those machines.
    Let me know if you have any other questions.

  • Using iWeb ftp trouble but not with Fetch

    I have a site I created with iWeb and I cannot get it to publish to the ftp server (3essentials). I currently publish the site to a local folder, then upload the site folder using fetch. I would like to do it all through iWeb. But I keep getting an error? Any ideas on why it work for fetch and not iWeb?
    thanks for any ideas.

    Thanks for the tip. I tried it, and I had more success but not complete ...it now goes along farther without quitting,but says my password is incorrect. Which doesn't make sense because it is the same password that works for Fetch.
    any ideas?
    thanks,

  • Can login to OS 10.4.9 server using 10.4 client, but not with 10.3.9 client

    When I try to login to OS 10.4.9 server using 10.4 client, all is fine, but not with 10.3.9 client -- what's up?
    It seems that when I set the group preferences (what kind of dock the users in our elementary school see, etc.), it doesn't affect 10.4 clients, but when trying to log onto the server using a 10.3.9 client, it just runs and runs, never logging on. Have to eventually restart the client computer. If I take a user out of a group with preferences set, it's fine. So, help! Most of my computers in my lab are 10.3.9. All are bound.
    Thanks,
    Joan

    Hi Devils_Coup,
    first of all: WELCOME TO THE DISCUSSIONS!
    It is strongly recommended to use OS 9.1 or higher. However, you do not have to buy it, just download and apply the free updates here: Mac OS 9: Available Updates.
    Also make sure your firmware is up-to-date: Firmware Upgrades.
    In MacOS X remember: Repair permissions before and after an update!
    If this answered your question please consider granting some stars: Why reward points?

Maybe you are looking for

  • What is the better way to change name of a site with paths and links?

    Hi! i m using dreamweaver cs4 and i have a site already configured on dreamweaver i need to change the name of the site and at the same time, every path names and every links This site has about 50 pages so i would like to know what is the better ste

  • 1.can't find live chat 2. Firefox recommends updating, but I can't find entrance to the sequence to do this

    I have scrolled thru all the Firefox pages I can fine...nowhere can I find where to access live chat. Also have a message my Firefox version is outdated...but I can't find where to install a newer version

  • Help required for novice

    I have a 300d and was wondering if I can get a converter to attach a 38mm lens Solved! Go to Solution.

  • Distance between objects

    I am using the Circle Distance example.vi (attached) and I want to improve the code. Imagine a picture with 4 circles. So instead of measuring the distance between one circle and 2 circles (VI example), I want to measure the distance between 1 circle

  • Can I export a high quality DVD from iMovie?

    Please help.  I am making a short experimental film which will show in a gallery in a few weeks.  I need the final product to be as high quality as possible.  It will be projected on a big screen before an audience.  Can I make a high quality DVD fro