una tesis tamaño sampieri población poblacion para muestreo muestra investigacion finita ejemplos ejemplo cálculo conociendo como calcular java swing jframe awt

java - tesis - TextBox no se muestra en el marco hasta que el marco se estira manualmente



poblacion y muestra de una investigacion ejemplos (1)

Estoy tratando de crear una página de inicio de sesión. Escribí código para dos cuadros de texto y un botón. Un cuadro de texto al lado del nombre de usuario y otro al lado de la contraseña. Un botón de "Iniciar sesión" a continuación. Pero no estoy seguro de por qué los cuadros de texto y el botón no se muestran en mi salida. Solo obtengo el nombre de usuario y la etiqueta de la contraseña en la pantalla de mi salida.

Lo extraño es que cada vez que estiro mi cuadro de salida (me refiero a tirar de la pantalla horizontal o verticalmente) aparecen las dos cajas de texto y el botón.

Por favor revisa mi código y avísame qué sucede. Estaba tratando de poner fotos para que sea más fácil de entender, pero no tengo suficiente reputación. Por favor ayuda.

import javax.swing.*; import java.awt.*; public class HomeScreen{ public static void main(String args[]){ JFrame frame = new JFrame("Medical Store"); frame.setVisible(true); frame.setSize(600,400); JPanel panel = new JPanel(new GridBagLayout()); frame.getContentPane().add(panel, BorderLayout.NORTH); GridBagConstraints c = new GridBagConstraints(); JLabel label1 = new JLabel("Username"); c.gridx = 0; c.gridy = 0; c.insets = new Insets(10,10,10,10); panel.add(label1,c); JLabel label2 = new JLabel("Password"); c.gridx = 0; c.gridy = 1; panel.add(label2,c); JTextField textbox1 = new JTextField(10); c.gridx = 1; c.gridy = 1; panel.add(textbox1,c); JTextField textbox2 = new JTextField(10); c.gridx = 2; c.gridy = 1; panel.add(textbox2,c); JButton button1 = new JButton("Sign In"); c.gridx = 1; c.gridy = 2; panel.add(button1,c); } }


Está llamando a setVisible(true) antes de agregar todos los componentes, por lo que su GUI está haciendo exactamente eso , dibujándose antes de agregar componentes.

JFrame frame = new JFrame("Medical Store"); frame.setVisible(true); // all components added here

Solución: realice la setVisible(true) al final después de agregar todos los componentes.

JFrame frame = new JFrame("Medical Store"); // all components added here frame.setVisible(true);

Ahora todos los componentes deben ser visualizados.

Otras objeciones:

  • Evite llamar a setSize(...) en cualquier cosa. En su lugar, permita que los administradores de diseño y los tamaños preferidos de componentes lo hagan por usted.
  • Call pack() en el JFrame justo antes de configurarlo para que ocurra lo anterior.