Articles of swing

Java AWT / SWT / Swing: Como planejar uma GUI?

Eu já percebi alguns aplicativos com uma pequena interface gráfica. Nada complexo, mas eu encontrei vários problemas que os componentes não são exibidos ou simplesmente não se comportando conforme o esperado. Agora minha pergunta: Como você planeja essas interfaces de usuário? O que você faz quando precisa fazer alterações? Como você depura comportamentos estranhos? Isso […]

Atualizando o ImageIcon no JTree sem repintar a Árvore?

Basicamente eu edito um atributo private string status=”OK” no UserObject() de um DefaultTreeNode() . Eu tenho um CustomRenderer que implements DefaultCellRenderer , que define o ícone, tornando o atributo “OK” de UserObject de um TreeNode . Originalmente, quando eu seleciono um nó, o ícone muda. Eu estou usando Tree.revalidate() & Tree.repaint() , e a mudança […]

Como combinar ouvintes de events com “pedir” por um evento?

Eu escrevi um jogo de labirinto simples para um terminal que repetidamente pede ao usuário para fazer algo (por exemplo “Em que direção você gostaria de ir? [N / E / S / W]”). Eu tenho um método navigate() executando em um loop que triggers essas perguntas, armazena suas respostas e faz algo dependendo da […]

paintComponent desenha outros componentes no topo do meu desenho

Eu estou tentando construir uma ferramenta de pintura simples. O mouseDrag events cria uma nova elipse e faz com que o meu JPanel repaint() . Isso funciona bem até agora. No entanto, se eu pressionar qualquer botão (ou qualquer outro componente da interface do usuário) antes de triggersr o evento mouseDrag pela primeira vez, o […]

mover componente depois de arrastar e soltar

Eu vi o código de arrastar e soltar . Question1: como podemos mover a imagem dentro do painel descartado (usando o ponteiro do mouse) após a imagem ser descartada. (destino da imagem, eu quero estar onde eu libero o mouse. e, em seguida, para alterar a localização também (usando o mouse será melhor. ou usando […]

Por que é importante usar o invokeLater?

Eu encontrei recentemente um código de exemplo: public static void main(String[] args) { javax.swing.SwingUtilities.invokeLater(new Runnable() { public void run() { createAndShowGUI(); } }); } O método createAndShowGUI() abre uma janela da interface do usuário. Então eu tentei cortar o código como o seguinte: public static void main(String[] args) { createAndShowGUI(); } Ambas as versões funcionam […]

Esta é a maneira correta de usar a API Java 2D Graphics?

Estou criando um front-end gráfico para uma simulação do JBox2D. A simulação é executada de forma incremental, e entre as atualizações, o conteúdo da simulação deve ser desenhado. Semelhante a um jogo, exceto sem input. Eu só preciso de primitivas geométricas para desenhar uma simulação JBox2D. Essa API parecia a escolha mais simples, mas seu […]

Maneira correta de usar o JLabels para atualizar uma imagem

Eu estou criando uma GUI, e sou relativamente novo para swing e awt. Eu estou tentando criar um gui que, após o lançamento, define o plano de fundo para uma imagem e, em seguida, usa um método para criar um slideshow de tipos. Eu tentei isso, e eu não estou ligado ao código, então eu […]

usando o sono () em balanço

public class TestFrame extends JFrame { public TestFrame() { setBounds(10, 10, 500, 500); setLocationRelativeTo(null); setDefaultCloseOperation(3); } public static void main(String[] args) throws InterruptedException { TestFrame tf = new TestFrame(); tf.add(new JButton(“test1”)); tf.setVisible(true); Thread.sleep(2000); tf.getContentPane().removeAll(); tf.add(new JButton(“test2”)); System.out.print(“Show test”); } } Eu quero que o programa mostre JButton(“test2”) depois de 2 segundos. Então eu adiciono thread.sleep(2000) […]

Retornar o índice do botão clicado?

Eu tenho uma matriz de 30 botões []. Eu tenho uma variável buttonClicked. Quando pressiono o botão como posso obter o índice e armazenar o número do índice no buttonClicked? Obrigado 🙂 JButton [] buttons = new JButton[30]; for(int i = 1; i 10 && i <= 20) ? (31 – i) : i; System.out.printf("i […]