Criando uma interface java swing
2 métodos:
Faça a janela principalrespostas de programação para as ações do usuárioPrimeiro, você precisa as noções básicas de objetos Java e interfaces. Assumimos e saber.
Este artigo explica como criar um programa simples com o código fonte.
Para inserir botões, campos de texto e outros componentes na janela do programa, você precisa saber JPanel. É um tipo de componentes do recipiente, que ocupa a porção utilizável da janela e mostra os componentes de uma forma simples. Como os diferentes componentes são organizados dependerá do "layout", onde têm colocado cada componente. Para a programação manual, você provavelmente terá que, pelo menos, saber sobre "BorderLayout"O que coloca quatro componentes nas laterais e um grande componente no meio. Você também precisa saber "FlowLayout"O que ele vai mostrar juntos em uma linha horizontal. E, finalmente, com GridLayout Você pode organizar componentes arbitrariamente em uma tabela n * m. Existem mais tipos de "layout", mas para iniciantes são muito complexos. A ideia fundamental é que um componente não pode ser apenas uma caixa de seleção de um botão ou também pode ser outro "JPanel". Você pode criar uma interface de usuário complexa, apenas a colocação de painéis em um outro e escolher o tipo de "layout" de cada um.
Depois de ter a ocorrência de "JPanel", chama o método ".setLayout" e acrescenta ".add" para adicionar componentes a ele. Para o "BorderLayout" necessidade de dar a posição como o segundo parâmetro. Por exemplo, o "myPanel.add (myButton, BorderLayout.NORTH)" colocar o botão na extremidade superior.
O recipiente superior, que aparece na janela que representa o aplicativo Java, não é um "JPanel", mas "JFrame". Um exemplo de uma chamada para adicionar o painel principal com a instância do "JFrame" seria "miJFrame.getContentPane (). Adicionar (miJPanel, BorderLayout.Center)".
Para a sua aplicação não só pode ser, mas para interagir com o usuário, use a interface "ActionListener". Cada tipo de interface não-abstrato "ActionListener" tem um método único "actionPerformed", que é chamado automaticamente quando o usuário realiza uma ação com o componente em que colocar o detector (a ação com um botão, obviamente, pressione-o ). Para inserir um acções detector para um botão ou outro componente chama o método ".addActionListener.".
dicas
- É mais difícil implementar a interface "MouseListener" e usar ".addMouseListener" a atividade de registro em qualquer componente.
- Se você deseja criar seus próprios gráficos objetos (como um tabuleiro de xadrez), verifique lona. Ele pode ser colocado em sua aplicação como qualquer outro componente, mas você precisa escrever o método ".paint" que irá lidar totalmente desenhar na tela.
- Se você precisar que o usuário digite uma seqüência, use o método estático "JOptionPane.showInputDialog (this," A minha mensagem ")". O primeiro parâmetro deve ser a janela do seu aplicativo ou outro painel (o campo de texto aparece no centro do elemento root). O método retorna o valor que o usuário inseriu no campo de texto.
- Na prática, muitos programas será o componente mais útil "JTable". Uma vez que você já domina o básico, usá-lo diretamente.
- É possível colocar todos os componentes em um único painel usando "GridBagLayout" mas esta classe é mais difícil de utilizar.
avisos
- Alguns ambientes de desenvolvimento oferecem a possibilidade de compor a interface de usuário do balanço de uma forma atraente para o usuário. No entanto, geralmente, eles não são capazes de fazer um painel com funções avançadas corretamente. Essas funções podem ser árvores, tabelas, listas, componentes e modelos de dados personalizados "caixas de combinação" que alteram o conteúdo enquanto o programa está em execução. Se mais tarde você precisa escrever código-fonte manualmente para acabar com recursos avançados, pode ser colocado em uma tortura saber isso. Portanto, você não deve abusar muito de qualquer ambiente para a criação de interfaces de usuário, e mais tarde irá limitar suas capacidades de programação.
- Swing é um programa single-threaded. Se seu aplicativo precisa de muito poder de computação seu programa irá congelar até que o método "actionPerformed" para retornar algum valor. Aprender e usar Java com vários segmentos, a fim de manter o balanço utilizável enquanto o processo está sendo executado carga elevada.
- A maioria dos métodos de componentes Swing só pode ser chamado de forma segura a partir do segmento que chama-lo, ou seja, que chama de ".actionPerformed" e outros métodos semelhantes.
Se você precisa chamá-los de outro segmento (por exemplo, para atualizar uma barra de progresso ou mostrar os resultados de um processo em curso), marque "SwingUtils.invokeLater".