Alinhar conteúdo no top da janela com JFrame [Resolvido]  XML
Índice dos Fóruns » Interface Gráfica
Autor Mensagem
Phpimenta
HelloWorld
[Avatar]

Membro desde: 11/12/2008 17:06:01
Mensagens: 12
Offline

Fala moçada blz?

Alguém sabe como deixar o conteúdo no topo da janela com a classe JFrame. Por padrão o conteúdo é alinhado no meio da janela (Foi isso que eu entendi fuçando a Internet).

A todos que reponderem agradeço desde já.

This message was edited 1 time. Last update was at 20/03/2010 19:42:52


"Só há duas maneiras de viver a vida:
A primeira é vive-la como se os milagres não existissem milagres, A segunda é vive-la como se tudo fosse um milagre".

[Albert Eistein]
[Email]
tkx
JavaChild
[Avatar]

Membro desde: 01/10/2009 09:28:34
Mensagens: 110
Localização: Goiânia - GO
Offline

Bom dia!
Dica: leia sobre layouts!
Tem diversos, cada um mais ou menos adequados para o q vc precisa!
FlowLayout, AbsoluteLayout, GridLayout, GridBagLayout (recomendado), dentre outros!

Tem um tuto sobre gridbag: http://javafree.uol.com.br/artigo/5792/Tudo-sobre-o-GridBagLayout.html

Se vc associar gridbaglayout com panels no JFrame vai ficar 200% bom!

Dúvidas, pregunte!

"Programação Orientada a Objetos é uma péssima idéia, que só poderia ter nascido na Califórnia."
Edsger Dijkstra
[MSN]
Phpimenta
HelloWorld
[Avatar]

Membro desde: 11/12/2008 17:06:01
Mensagens: 12
Offline

Olá Tkx,

na realidade eu queria deixar o texto no topo com os próprios recursos da classe Jframe. Segue um exemplo abaixo para melhor ilustrar minha dúvida.

import javax.swing.*;

public class Janela extends JFrame {

public Janela() {
this.setTitle("Janela com JFrame");

this.setVisible(true);

this.setSize(600,400);

this.add(new JLabel("Como deixar esse texto no topo da janela"));

this.setDefaultCloseOperation(EXIT_ON_CLOSE);
}

public static void main ( String [] args ) {
new Janela();
}

}

This message was edited 1 time. Last update was at 18/03/2010 17:35:12


"Só há duas maneiras de viver a vida:
A primeira é vive-la como se os milagres não existissem milagres, A segunda é vive-la como se tudo fosse um milagre".

[Albert Eistein]
[Email]
tkx
JavaChild
[Avatar]

Membro desde: 01/10/2009 09:28:34
Mensagens: 110
Localização: Goiânia - GO
Offline

Bom... só com os componentes do JFrame, só com muita POG!

Não é difícil usar layouts!

Veja sua janela-exemplo com border layout:



"Programação Orientada a Objetos é uma péssima idéia, que só poderia ter nascido na Califórnia."
Edsger Dijkstra
[MSN]
tkx
JavaChild
[Avatar]

Membro desde: 01/10/2009 09:28:34
Mensagens: 110
Localização: Goiânia - GO
Offline

PHPimenta...

Coloquei em um panel o label e ficou alinhado superior...

mas sem um layout vai complicar pra vc colocar outros componentes na janela!



"Programação Orientada a Objetos é uma péssima idéia, que só poderia ter nascido na Califórnia."
Edsger Dijkstra
[MSN]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20587
Localização: Curitiba/PR
Offline

Phpimenta wrote:na realidade eu queria deixar o texto no topo com os próprios recursos da classe Jframe. Segue um exemplo abaixo para melhor ilustrar minha dúvida.


Suportar diferentes layout managers é um recurso da classe JFrame! Faço minhas as palavras do tkx, aprenda a usar os layouts.

Eventualmente você vai ouvir falar do setBounds e setLayout(null). Fuja disso! Apesar de deixar vc dar a posição exata de cada componente, não vai deixar seu usuário redimensionar as janelas e nem será multiplataforma. Aprenda os layout managers, dá um pouquinho mais de trabalho, mas o resultado mais do que compensa.

@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
Phpimenta
HelloWorld
[Avatar]

Membro desde: 11/12/2008 17:06:01
Mensagens: 12
Offline

Olá pessoal,

ai está o mesmo código utilizando o Gerenciador de Layout GridBagLayout, mas o texto ainda continua no meio da tela.

This message was edited 1 time. Last update was at 18/03/2010 20:27:22


"Só há duas maneiras de viver a vida:
A primeira é vive-la como se os milagres não existissem milagres, A segunda é vive-la como se tudo fosse um milagre".

[Albert Eistein]
[Email]
tkx
JavaChild
[Avatar]

Membro desde: 01/10/2009 09:28:34
Mensagens: 110
Localização: Goiânia - GO
Offline

Bom... o gridbag eu dei a dica pq é um dos mais poderosos, e dos menos triviais!

O exemplo q t dei com border layout resolveria! Mas tou mandando um exemplo com gridbag!


"Programação Orientada a Objetos é uma péssima idéia, que só poderia ter nascido na Califórnia."
Edsger Dijkstra
[MSN]
Phpimenta
HelloWorld
[Avatar]

Membro desde: 11/12/2008 17:06:01
Mensagens: 12
Offline

Valeu Tkx, muito obrigado por tirar minha dúvida.

This message was edited 2 times. Last update was at 20/03/2010 15:04:13


"Só há duas maneiras de viver a vida:
A primeira é vive-la como se os milagres não existissem milagres, A segunda é vive-la como se tudo fosse um milagre".

[Albert Eistein]
[Email]
tkx
JavaChild
[Avatar]

Membro desde: 01/10/2009 09:28:34
Mensagens: 110
Localização: Goiânia - GO
Offline

Disponha! Não se esqueça de editar o título do tópico e colocar [RESOLVIDO]

Mais dúvidas não hesite em perguntar!

"Programação Orientada a Objetos é uma péssima idéia, que só poderia ter nascido na Califórnia."
Edsger Dijkstra
[MSN]
 
Índice dos Fóruns » Interface Gráfica
Ir para:   
Powered by JForum 2.1.8 © JForum Team