nieobrotowa granica okna i pozycjonowanie

Jeśli tworzę niezmienne rozmiary JFrame, a Windows Aero jest włączonysetLocation wydaje się, że nie uwzględnia poprawnie obramowania okna.

W poniższym kodzie oczekiwałbym, że druga ramka zostanie umieszczona na prawo od pierwszej klatki, zamiast tego obramowania nakładają się. Jeśli Aero jest wyłączone lub jeśli usunę połączeniasetResizable odbywa się to zgodnie z oczekiwaniami.

import java.awt.Rectangle;
import javax.swing.JFrame;
public class FrameBorders {
public static void main(String[] args) {
    JFrame frame1 = new JFrame("frame 1");
    JFrame frame2 = new JFrame("frame 2");

    frame1.setResizable(false);
    frame2.setResizable(false);

    frame1.setVisible(true);        
    Rectangle bounds = frame1.getBounds();      
    frame2.setLocation(bounds.x+bounds.width, bounds.y);
    frame2.setVisible(true);

}
}

Czy robię coś źle, czy jest to błąd? Jak mogę wyświetlać obok siebie 2 nie dające się odczytać okna dialogowe bez nakładania się granic?

Edytuj: dodano zrzuty ekranu (zmieniono także klatkę2 na JDialog zamiast JFrame)

Aero On:

Aero Off:

Aero On, ale można zmieniać rozmiar:

questionAnswers(2)

yourAnswerToTheQuestion