SWING - Componentes mais importantes e suas propriedades - parte 1
Nesse artigo vamos conhecer um pouco melhor alguns componentes do pacote Swing. Essa primeira parte apresentará os componentes referentes a Contêiners.
Swing - Componentes mais importantes e suas propriedades - parte 1
Principalmente para quem está começando no Java e quer conhecer melhor a interface gráfica, este artigo mostrará alguns de seus componentes e suas propriedades. No início, é muito comum o programador querer utilizar um componente que faz determinada função, mas esse não tem certeza se o tal componente existe ou como utilizá-lo.
O artigo será dividido em 4 partes: Contêiners; Botões e Campos de Controle; Menus e por fim Janelas.
Antes de conhecermos os componentes e suas propriedades, vamos entender um pouco a diferença entre os componentes do pacote Swing e os componentes do pacote AWT.
Componentes AWT
O pacote AWT (Abstract Windows Toolkit) possui os primeiros componentes gráficos que surgiram no java. Como janelas (Container, Frame, Panel...), alguns botões (Button, RadioButton, CheckBox...), Rótulos (Label), campos de texto (TextField), Listas (Choice, List,...) entre outros componentes. Esses componentes eram muito utilizados quando ainda não existia o pacote Swing. Eles possuem uma aparência mais "padrão", são mais quadrados e não possuem muitos efeitos gráficos.
Componentes Swing
O pacote Swing é uma evolução do pacote AWT. Além de seus próprios componentes, esse pacote possui quase todos os componentes que já existiam no pacote AWT, porém com uma interface gráfica mais evoluida e com maiores efeitos. Os componentes Swing começam com a letra "J", assim um botão que no AWT se denomina Button, no Swing é JButton. Como dito antes, o pacote Swing possui componentes próprios, esses componentes estão entre telas mais aperfeiçoadas (JTabbedPane, JToolBar, JInternalFrame, JColorChooser...), novos botões e campos para dispor as informações na aplicação (JFormattedTextField, JProgressBar, JSpeener, JPasswordField, JTextPane, JTextArea...) e menus (JMenuBar, JMenu...).
Nesse primeiro artigo vamos conhecer um pouco mais dos componentes relacionados a Contêiners.
![]()
Propriedades mais utilizadas da JToolBar:
.setAligmentY(float aligmentY) - Define o alinhamento da barra (normalmente no topo)
.add(Component comp) - Permite adicionar um botão (JButton) para ser o ícone de atalho da barra de ferramentas.

Propriedades mais utilizadas do JPanel:
.setBackground(Color bg) - Define a cor do painel. A cor pode ser indicada por constantes da classe Color. Exemplo: Color.RED
.setBorder(Border border) - Define a borda do painel. A borda pode possuir título, ser mais espessa, mais densa, entre outras definições e é definida pela classe BorderFactory. Exemplo: BorderFactory.createTitledBorder("Título")
.add(Component comp) - Adiciona um componente no JPainel

Propriedade mais utilizadas do JTabbedPane:
.addTab(String title, Component component) - adiciona um aba no componente, o primeiro parâmetro é o título da aba e o segundo é o componente que será parte da aba. Normalmente esse componente é o JPanel e dentro do JPanel vão os demais componentes da janela.
.addTab(String title, Icon icon, Component component) - tem o mesmo efeito que o método acima, porém permite setar um ícone para a aba.
.addTab(String title, Icon icon, Component component, String tip) - acrescenta ao método acima o ToolTipText, ultimo parâmetro do método. A String colococada no local do TipText será visível ao posicionar o cursor do mouse sobre o título da aba.

Propriedades mais utilizadas do JSplitPane:
.setDividerLocation(double proportionalLocation) - define a porcentagem (entre 0 e 100) que a tela estará dividida. Para que ela esteja dividida ao meio deve ser especificado 100 %.
.setDividerSize(int newSize) - define o espaço em branco que se localiza entre os dois botões do JSpliPane.

Propriedades mais utilizada do JScrollPane:
.add(Component comp) - adiciona um componente na JScrollPane como por exemplo, um JPanel.
A barra de rolagem aparece "automaticamente" de acordo com o componente que está dentro do painel de rolagem. Conforme vai aumentando o texto, por exemplo, maior fica a barra de rolagem.
Existem algumas propriedades que são comuns a vários componentes e também são bastante utilizadas. As propriedades comuns aos componentes acima estão descritas em seguida:
.setSize(int width, int height) - define a largura e a altura do componente.
.setBackground(Color bg) - define a cor de fundo do componente. A cor pode ser especificada por constantes da classe Color. Exemplo: Color.RED.
.setForeground(Color fg) - define a cor da fonte do componente. A cor da fonte também pode ser especificada pelas constantes da classe Color.
.setLayout(LayoutManager layout) - define como será a distribuição dos demais componentes sobre o componente especificado. Existem vários layouts, como o FlowLayout(), BorderLayout(), NullLayout()., GridLayout() Esses layouts são classes. Para que o componente possua o layout especificado deve ser instanciada a classe correspondente a ele no parâmetro.
.setToolTipText(String text) - o texto definido no parâmetro será visualizado ao parar com o cursor do mouse sobre o componente. Normalmente especifica para que serve determinado campo ou janela.
Nos próximos capítulos serão vistos outros componentes Swing com suas funções e propriedades.
Espero que tenham gostado e que façam um bom proveito.
Abraços e até logo.
Nesse primeiro artigo vamos conhecer um pouco mais dos componentes relacionados a Contêiners.
JToolBar: A barra de ferramentas é utilizada para criar atalhos da aplicação. Assim como no Eclipse, por exemplo, temos os "play" verde para executar o aplicativo, podemos criar atalhos para nossos programas também.
Propriedades mais utilizadas da JToolBar:
.setAligmentY(float aligmentY) - Define o alinhamento da barra (normalmente no topo)
.add(Component comp) - Permite adicionar um botão (JButton) para ser o ícone de atalho da barra de ferramentas.
JPanel: O painel é um componente utilizado para fazer subdivisões na tela, ou para separar de forma organizada componetes dispostos na tela.
.setBackground(Color bg) - Define a cor do painel. A cor pode ser indicada por constantes da classe Color. Exemplo: Color.RED
.setBorder(Border border) - Define a borda do painel. A borda pode possuir título, ser mais espessa, mais densa, entre outras definições e é definida pela classe BorderFactory. Exemplo: BorderFactory.createTitledBorder("Título")
.add(Component comp) - Adiciona um componente no JPainel
JTabbedPane: O JTabbedPane permite agrupar vários JPanels em um único componente formando uma aba para cada painel.
.addTab(String title, Component component) - adiciona um aba no componente, o primeiro parâmetro é o título da aba e o segundo é o componente que será parte da aba. Normalmente esse componente é o JPanel e dentro do JPanel vão os demais componentes da janela.
.addTab(String title, Icon icon, Component component) - tem o mesmo efeito que o método acima, porém permite setar um ícone para a aba.
.addTab(String title, Icon icon, Component component, String tip) - acrescenta ao método acima o ToolTipText, ultimo parâmetro do método. A String colococada no local do TipText será visível ao posicionar o cursor do mouse sobre o título da aba.
JSplitPane: O componente é semelhante a um JPanel possuindo dentro dele dois botões que fazem a divisão da tela.
.setDividerLocation(double proportionalLocation) - define a porcentagem (entre 0 e 100) que a tela estará dividida. Para que ela esteja dividida ao meio deve ser especificado 100 %.
.setDividerSize(int newSize) - define o espaço em branco que se localiza entre os dois botões do JSpliPane.
JScrollPane: O painel de rolagem sempre é utilizado com algum outro componente, normalmente um componente para adicionar textos como o JTextArea (veremos o JTextArea no próximo capítulo). Esse componente adiciona barra de rolagens ao componente que se localiza dentro dele.
Propriedades mais utilizada do JScrollPane:
.add(Component comp) - adiciona um componente na JScrollPane como por exemplo, um JPanel.
A barra de rolagem aparece "automaticamente" de acordo com o componente que está dentro do painel de rolagem. Conforme vai aumentando o texto, por exemplo, maior fica a barra de rolagem.
Existem algumas propriedades que são comuns a vários componentes e também são bastante utilizadas. As propriedades comuns aos componentes acima estão descritas em seguida:
.setSize(int width, int height) - define a largura e a altura do componente.
.setBackground(Color bg) - define a cor de fundo do componente. A cor pode ser especificada por constantes da classe Color. Exemplo: Color.RED.
.setForeground(Color fg) - define a cor da fonte do componente. A cor da fonte também pode ser especificada pelas constantes da classe Color.
.setLayout(LayoutManager layout) - define como será a distribuição dos demais componentes sobre o componente especificado. Existem vários layouts, como o FlowLayout(), BorderLayout(), NullLayout()., GridLayout() Esses layouts são classes. Para que o componente possua o layout especificado deve ser instanciada a classe correspondente a ele no parâmetro.
.setToolTipText(String text) - o texto definido no parâmetro será visualizado ao parar com o cursor do mouse sobre o componente. Normalmente especifica para que serve determinado campo ou janela.
Nos próximos capítulos serão vistos outros componentes Swing com suas funções e propriedades.
Espero que tenham gostado e que façam um bom proveito.
Abraços e até logo.


Alex Tenório
em 8/6/2010 16:05 - Responder
Gostei do posts. Vou dá o meu feedback.
Aprendi muito com o que foi trasmitido
=]
Aprendi muito com o que foi trasmitido
=]
em 8/6/2010 16:05 - Responder
[Comentário do autor]
Luciana Pereira De Araújo
em 8/6/2010 23:19 - Responder
Luciana Pereira De Araújo
Muito obrigada, Alex.
Fico feliz que tenhas gostado.
Se te interessas na Copa do Mundo, disponibilizei em um artigo do tipo Aplicativo uma tabela dinâmica para o celular e é de graça.
Abraço, Luciana.
em 8/6/2010 23:19 - Responder


Calos
em 21/7/2010 16:25 - Responder
Olá, gostei do material...
Já vou dar uma lida na segunda parte.
Parabéns.
Já vou dar uma lida na segunda parte.

Parabéns.
em 21/7/2010 16:25 - Responder
Você está em:
canal Java
Publicidade
Luciana Pereira De Araújo
Space do autor
Formada em Técnico em Desenvolvimento de Software pelo CEDUP - Blumenau, SC
Cursa o 5ºSemestre do Curso de Ciência da Computação na FURB - SC
Ministra aulas de programação Delphi, Java e J2ME - Cursos Profesor Bruno - Blumenau, SC.
Space do autor

Estudo comparativo entre banco de dados IBM Informix e Microsoft SQL
3
0
Conheça os planos de créditos DevMedia e visualize esse post agora mesmo!