ze wszystkimi wykruszanie się z ich własnych smaków, w oparciu o inne smaki, I dodać mój bo inni zablokowana cię w odniesieniu do pozycjonowanie okna na wybranym ekranie.
Jest po prostu najlepszy. Umożliwia także ustawienie lokalizacji na drugim ekranie.
public void setLocation(int screen, double x, double y) {
GraphicsEnvironment g = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice[] d = g.getScreenDevices();
if (screen >= d.length) {
screen = d.length - 1;
}
Rectangle bounds = d[screen].getDefaultConfiguration().getBounds();
// Is double?
if (x == Math.floor(x) && !Double.isInfinite(x)) {
x *= bounds.x; // Decimal -> percentage
}
if (y == Math.floor(y) && !Double.isInfinite(y)) {
y *= bounds.y; // Decimal -> percentage
}
x = bounds.x + x;
y = jframe.getY() + y;
if (x > bounds.x) x = bounds.x;
if (y > bounds.y) y = bounds.y;
// If double we do want to floor the value either way
jframe.setLocation((int)x, (int)y);
}
Przykład:
setLocation(2, 200, 200);
Nawet pozwala przechodzić w procentach dla położenia ekranu! Ekran
setLocation(2, 0.5, 0); // Place on right edge from the top down if combined with setSize(50%, 100%);
musi być większy niż 0, co, jestem pewien, jest trudnym wymogiem!
Aby umieścić na końcu, wystarczy zadzwonić pod numer Integer.MAX_VALUE. **
Ale dlaczego to dotyczy "pełnego ekranu"? Co zrobić, jeśli nie potrzebuję trybu pełnoekranowego? – Dims
@Dims, podałem nową odpowiedź, która nie wymusza pełnego ekranu. – ryvantage