Autor
|
Tema: Duda sobre Layouts (Leído 4,642 veces)
|
Drewermerc
|
Hola a todos. Bueno mi la duda que tengo es si se puede manejar algun tipo de layout y paneles pero donde pueda distribuir los elementos libremente algo así como cuando se usa un JFrame sin layout y se usa la opción setBounds. Lo e intentado con GridLayout, BoxLayout y Border layout pero no e encontrado una forma de mover los objetos libremente como el JTextFiel, JButton y JLabel. lo que intentado hasta ahorita es esto. import javax.swing.JFrame; import javax.swing.JMenuBar; import javax.swing.JMenu; import javax.swing.JMenuItem; import javax.swing.JButton; import javax.swing.JTextField; import javax.swing.JLabel; import javax.swing.JPasswordField; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.BoxLayout; import java.awt.Container; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.Component; import java.awt.BorderLayout; import java.awt.Color; import java.awt.GridLayout; private final int COLUMS = 1; private final int ROWS = 15; //constructor public Layout(){ window = new JFrame("prueba"); menuEdit = new JMenu("uno"); labelUser = new JLabel("dos "); containerMain = window.getContentPane(); } //metodo para hacer visible la ventana public void windowVisible(){ panelMenu(); centerObjects(); buildAll(window.getContentPane()); window.pack(); window.setBounds(100, 100, 200, 400); window.setVisible(true); window. setDefaultCloseOperation(JFrame. EXIT_ON_CLOSE); } public void panelMenu(){ window.setJMenuBar(menuBar); menuBar.add(menuEdit); menuEdit.add(itemUno); } public void centerObjects(){ centerPanel. setBackground(Color. red); topPanel. setBackground(Color. blue); centerPanel.add(labelUser); centerPanel.add(user); centerPanel.add(label); centerPanel.add(pUser); exit.addActionListener(this); centerPanel.add(exit); msg.setVisible(false); topPanel.add(msg); itemUno.addActionListener(this); } } @Override if (action.getSource() == exit){ } if(action.getSource() == itemUno){ msg.setVisible(true); msg.setText(msg.getText() + "holaaa"); } } public static void main (String[] args ) { Layout principal = new Layout(); principal.windowVisible(); } }
Bueno espero que me puedan ayudar. Saludos. Drewermerc.
|
|
|
En línea
|
|
|
|
MNicolas
Desconectado
Mensajes: 127
Developer
|
Yo uso AbsoluteLayout
|
|
|
En línea
|
|
|
|
Drewermerc
|
hola Nicolão. gracias por responder. Estuve revisando ese layout y bueno vi que es muy parecido a cuando se usa setLayout(null), me podrias decir si hay alguna diferencia entre estas dos formas.
saludos. Drewermerc.
|
|
|
En línea
|
|
|
|
|
Drewermerc
|
Hola Chuidiang. gracias por responder. bueno estuve probando en GridBagLayout y si es un poco lioso pero bueno tengo una pregunta no se si se puede hacer lo estuve intentando pero no e logrado el resultado lo que quisiera saber si se puede hacer lo siguiente. por ejemplo en el tutorial que me bridaste viene un JTextField en la parte inferior en medio de los botones pero por ejemplo se puede poner el JTextField en la parte superior y al lado un JLabel ahora despues de tener estos dos elementos se puede poner un boton abajo de estos dos objetos pero que quede en medio. aqui podria un ejemplo con lineas espero que se entienda mi duda. ---------------- ------------------- ------------------
Saludos. Drewermerc.
|
|
« Última modificación: 26 Noviembre 2014, 16:58 pm por Drewermerc »
|
En línea
|
|
|
|
Chuidiang
|
Hola:
Si te fijas en el tutorial que te pase, en uno de los pasos intermedios, hay una imagen en la que "boton 3" y "campo de texto" quedan abajo, uno a cada lado y el "area texto" queda centrada encima de ellos. Lo que tu quieres es lo mismo, pero con los dos de abajo arriba y el de arriba abajo. No debería ser difícil.
Se bueno.
|
|
|
En línea
|
|
|
|
Drewermerc
|
bueno creo que te refieres a usar la propiedad fill del constraints y eso si lo pude hacer pero no hay una forma de reducir el tamaño del boton porque se agusta al tamaño de los dos objetos en este caso del JTextField y el JLabel. y bueno dos pregunta mas. ¿hay alguna manera de que al redimencionar la ventana se redimencionen los objeto? Tu sabes como hacer que los objetos se puedan se parar cuando los alineas en el eje de las "y", yo intente creando un JLabel con espacios y ponerlo arriba de los objetos eneste caso pobrebe poniendo una arriba del JTextField y si funciona pero queria saber. ¿si hay otra alternativa a la que estoy haciendo?
Saludos. Drewermerc
|
|
|
En línea
|
|
|
|
Chuidiang
|
Hola:
Mira el tutorial con calma, todo eso que preguntas está más o menos explicado. En la foto que te mencioné antes, el área de texto NO crece hasta ocupar el tamaño de los otros dos componentes y se cuenta qué es lo que hay que poner para que crezca, así que si a tí te crece posiblemente es que estás poniendo ese algo.
Se bueno.
|
|
|
En línea
|
|
|
|
Drewermerc
|
hola Chuidiang. Bueno gracias por todo tenias razon y bueno yo me confundi, pense que los valores de la propiedad fill solo podian ser los que se dicen en el tutorial pero ya veo que no. Lo unico que no solo encontrar como es que se redimencionen los objetos junto cuando preciono el boton de mazimizar, se quedan del mismo tamaño los objetos. No me habia dado cuenta pero creo que eres el autor de esa pagina, felicidades esta muy interesante. Saludos. Drewermerc.
|
|
« Última modificación: 29 Noviembre 2014, 20:28 pm por Drewermerc »
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Web Layouts y Web Logos [criticas constructivas para todos]
Diseño Gráfico
|
+ enrique ZP
|
5
|
2,500
|
22 Julio 2005, 13:41 pm
por + enrique ZP
|
|
|
Photoshop: Como recuperar los recuadros de layouts......
Diseño Gráfico
|
NeRoFiLo
|
2
|
1,812
|
31 Diciembre 2005, 17:16 pm
por MinusFour
|
|
|
JTable y Layouts
Java
|
Kerber0
|
3
|
5,918
|
16 Octubre 2009, 09:46 am
por Kerber0
|
|
|
¿layouts en php?
PHP
|
Clavo Oxidado
|
8
|
3,093
|
29 Junio 2010, 12:08 pm
por Falso Positivo
|
|
|
[Qt] Creación en horizontal por layouts?
Programación C/C++
|
Puntoinfinito
|
4
|
2,761
|
18 Marzo 2013, 22:26 pm
por Puntoinfinito
|
|