Articles of swing

Java KeyListener non registra i tasti freccia

Sto scrivendo un semplice programma in Java che include un KeyListener con il seguente override del metodo KeyTyped: @Override public void keyTyped(KeyEvent e) { int key = e.getKeyCode(); System.out.println(“TEST”); if (key == KeyEvent.VK_KP_LEFT || key == KeyEvent.VK_LEFT) { System.out.println(“LEFT”); //Call some function } else if (key == KeyEvent.VK_KP_RIGHT || key == KeyEvent.VK_RIGHT) { System.out.println(“RIGHT”); //Call […]

JProgressBar non sta progredendo

Quindi sto cercando di creare un downloader che mostri l’avanzamento del download con una barra di avanzamento. Ma sto avendo problemi dal momento che in realtà non aggiorna la barra di avanzamento. Fondamentalmente rimane bianco, quando è destinato ad essere blu. Se qualcuno può aiutare, il codice è sotto. JProgressBar progressBar = new JProgressBar(0, ia); […]

Ottieni il TreeNode modificato da CellEditorListener

In precedenza ho chiesto come triggersre un evento quando un TreeNode è stato rinominato ( qui ). Alla mia domanda è stata data una risposta, ma mi sono imbattuto in un altro problema. Devo accedere al TreeNode che si sta modificando nell’evento editStopped di CellEditorListener. Questo è il codice che devo fare così: package com.gamecreator; […]

Aggiungi un’immagine di sfondo a un pannello

Ho un JPanel e voglio aggiungere un’immagine come sfondo. Come lo posso fare ? frame = new JFrame(“Some frame”); panel1 = new JPanel(); panel1.setBorder(new EmptyBorder(5, 5, 5, 5)); // NEED TO ADD AN IMAGE TO THIS PANEL panel1.setLayout(cardlayout); frame.getContentPane().add(panel1); frame.setLocationByPlatform(true); frame.setVisible(true); Devo aggiungere un’immagine al panel e come posso farlo? AGGIORNAMENTO 1 panel1 = new […]

Barra di avanzamento dall’aspetto piacevole in java

Mi chiedo se qualcuno di voi sa come visualizzare una barra di avanzamento dall’aspetto gradevole in Java, principalmente usando Swing, anche se non mi dispiace usare librerie di terze parti. Ho esaminato i tutorial di JProgressBar ma nessuno di essi si riferisce allo stile della barra. Leggendo l’API ho trovato un metodo getUI che restituisce […]

Layout variabile in Swing

Come faresti a ottenere un gui dall’aspetto decente generato quando non sai quanti componenti avrai e quanto saranno grandi? Un utente, ad esempio, inserisce quanti campi di testo desiderano e quali di quei campi di testo sono raggruppati in riquadri con bordi e il programma genera questo. Sto usando GridLayout, ma il problema è che […]

Disegnare JComponents multipli su una cornice

Sto cercando di disegnare più oggetti auto sulla stessa finestra, ma sembra che si stiano sovrascrivendo a vicenda. Ecco il mio metodo paintComponent sovrascritto nella class Car public void paintComponent(Graphics g) { Graphics2D g2 = (Graphics2D) g; g2.setColor(wheelColor); g2.fill(leftWheel); g2.fill(rightWheel); g2.setColor(bodyColor); g2.fill(body); g2.fill(cab); } E nella mia class Viewer: JFrame f = new JFrame(); initializeFrame(f); […]

Come rendere una JTable non modificabile

Come rendere una JTable non modificabile? Non voglio che i miei utenti siano in grado di modificare i valori nelle celle facendo doppio clic su di essi.

Disegna un cerchio con un raggio e punta intorno al bordo

Sono davvero bloccato su come andare a programmare questo. Come disegnare un cerchio in Java con un raggio e punti intorno al bordo? Devo disegnare un cerchio all’interno di una JFrame con un raggio e punti intorno alla circonferenza. Posso calcolare matematicamente come trovare le coordinate del punto attorno al bordo, ma non riesco a […]

Differenza tra validate (), revalidate () e invalidate () nella GUI Swing

I componenti Swing hanno più metodi relativi agli aggiornamenti del layout dello schermo, in particolare: validate() invalidate() revalidate() La documentazione Java li definisce in qualche modo da un punto di vista tecnico, ma non è particolarmente chiaro come debbano essere usati. Qual è la differenza tra questi e in quali circostanze dovresti usarne uno piuttosto […]