Estoy tratando de localizar a mis cuadros en el centro de la pantalla , yo sé que este código debe funcionar bien:
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
int x = (int) ((screen.getWidth() - getWidth()) /2);
int y = (int) ((screen.getHeight() -getHeight()) /2);
setLocation(x, y);
o esta otra :
Toolkit tk = Toolkit.getDefaultToolkit();
Dimension screenSize = tk.getScreenSize();
int screenHeight = screenSize.height;
int screenWidth = screenSize.width;
setSize(screenWidth / 2, screenHeight / 2);
setLocation(screenWidth / 4, screenHeight / 4);
He probado todos los códigos posibles, pero no sé por qué no funciona, lo acabo de mover el marco hasta la esquina inferior derecha de la pantalla he utilizado setRelative a null, pero de nuevo no funciona.
Por fin pude traer el marco muy cerca del centro multiplicando el ancho por 5 y dividir por algo, pero yo sé que este no es el camino correcto.
podría alguien por favor que me explique lo que podría estar equivocado ?
Problema Solucionado :
solución:
He encontrado la mejor manera a mí , si alguna vez vienen con el mismo problema, simplemente dejar que el netbeans hacer que automáticamente al ir a propiedades y comprobación de generar centro , olvídate de las estúpido códigos.
- En el primer enfoque, el tamaño de la imagen puede que no se conoce todavía. Usted debe probalbly paquete primero.
- Acabo de hacer un Jframe en netbeans y tratar de centro de él , yo no específicos de códigos, de manera que no es ningún error os algo
- Si que es posible intentar crear marco vacío y centro de la misma. A continuación, añadir poco a poco los componentes que desea utilizar en el mismo y comprobar cuando se empieza a mostrarse no en el centro.
- He hecho esto muchas veces, es que no trabajo yo no sé por qué yo no trabajo.
La manera más fácil al centro del fotograma en la pantalla principal (hay opciones si usted tiene que multiplicar las pantallas) es el uso de setLocationRelativeTo(…) método del marco con null como argumento:
En caso de que no funciona, probar este directo (coordenadas):
Última y «ultimate» ejemplo – se mostrará centrada en el marco de @ cada sistema disponible de la pantalla:
Es suficiente si utiliza
Según Javadoc para java.awt.De la ventana.setLocationRelativeTo(),
tal vez no se equivocó con netbeans
usted puede probar
setLocationByPlatform
no el centro de la trama en muchas plataformas. Así que esta podría ser una buena ayuda para diagnosticar el problema, pero no una correcta respuesta a la pregunta original.Yo apostaría dólares a los donuts que se establece la ubicación en relación a null /establecer la ubicación mediante coordenadas x e y antes de establecer el tamaño de la JFrame. Si no ha configurado el tamaño, sin embargo, es tratada como 0x0, la configuración de los muertos centro de el centro de la pantalla. Si, a continuación, cambiar el tamaño, se sale de la topleft esquina donde estaba (el centro de la pantalla) y escalas hacia la parte inferior derecha de la pantalla.
En otras palabras, hacer setSize() vienen antes de centrarse en la pantalla.
Todo lo que hizo se ve bien para mí.