Cómo utilizar setBounds con JButton (En 4 Pasos)

Por luc braybury
Cómo utilizar setBounds con JButton (En 4 Pasos)
Burke/Triolo Productions/Brand X Pictures/Getty Images

SetBounds es un método en Java que mueve y cambia el tamaño de un componente para caber dentro de los parámetros de un rectángulo delimitador especificado. La nueva posición de este componente se define por los parámetros enviados al método desde dentro de una clase de programa. Estos parámetros incluyen los tipos de datos enteros x, y, anchura y altura. La entradas x e y definen la nueva coordenada de partida del componente, la anchura determina la anchura del componente y la altura determina la altura del componente.

Paso 1

Importa el paquete de oscilación de Java con el fin de tener acceso al método setBounds. Por ejemplo, para importar el paquete al comienzo de tu programa utiliza el código:

import javax.swing.*;

Paso 2

Ajusta el controlador de distribución en nulo para eliminar el uso del gestor de Java de diseño por defecto. Después de haber creado un contenedor para el componente JButton llama al método setLayout para ese contenedor. Por ejemplo, si el nombre del contenedor es "pane", el código se convierte en:

pane.setLayout(null);

Paso 3

Crea un JButton. Por ejemplo, para crear un JButton llamado "Botón1" y la etiqueta "botón", el código se convierte en:

JButton botón1 = new JButton("Botón");

Agrega el JButton al contenedor utilizando el método "add". El código de ejemplo añadiendo el botón en el panel de ejemplo se convierte en:

pane.add(botón1);

Paso 4

Llama al método setBounds en el JButton que contiene cuatro parámetros: la posición del píxel más a la izquierda, la posición del píxel superior, la anchura de la JButton en píxeles y la altura de la JButton en píxeles. Por ejemplo, para establecer los límites de un JButton que deseas que sea de 250 píxeles desde la izquierda de la imagen, un alto situado a 300 píxeles por encima del borde inferior, 300 píxeles de ancho y 150 píxeles de alto utiliza el código:

button1.setBounds(250, 300, 300, 150);