Articles of swing

MVC è sicuro in Swing Thread

Sto provando a toccare i limiti dell’architettura MVC in Swing, ma come ho provato tutto ciò (da SwingWorker o Runnable#Thread ) sono fatti su EDT le mie domande: ci sono dei limiti o dipende strettamente dall’ordine delle implementazioni ( SwingWorker in SwingWorker o Runnable#Thread )? limitato è se il metodo JComponent # è sicuro o […]

Come cambiare un colore JButton sul mouse premuto?

Voglio avere colors personalizzati in base agli eventi del mouse (mouse entra, esci, premuto, ecc.). Quindi, per realizzare questo, ho scritto il codice qui sotto. Va bene per tutto, tranne nel caso dell’evento premuto del mouse, che non fa nulla. Funziona solo se sovrascrivo il colore in UIManager come questo UIManager.put(“Button.select”, Color.red); . Il problema […]

Qual è l’azione giusta da eseguire alla chiusura di Windows in java / swing?

Ho appena scritto questo codice di test nella mia class CustomUIPanel: public static void main(String[] args) { final JDialog dialog = CustomUIPanel.createDialog(null, CustomUIPanel.selectFile()); dialog.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { System.exit(0); } }); } Funziona correttamente se CustomUIPanel.main() è il punto di ingresso del programma, ma mi chiedo qualcosa: cosa succede se un’altra […]

“Il metodo di confronto viola il suo contratto generale!” – TimSort e GridLayout

Ho creato una tavolozza di colors con un jPanel e un array JLabel. All’inizio ha funzionato bene, ma poi ho messo alcuni jLabels fuori dallo JPanel e li ho aggiunti ad alcuni eventi. Ora continuo a ricevere questo errore: Exception in thread “AWT-EventQueue-0” java.lang.IllegalArgumentException: Comparison method violates its general contract! at java.util.TimSort.mergeLo(TimSort.java:747) at java.util.TimSort.mergeAt(TimSort.java:483) at […]

Java – Come trascinare e rilasciare JPanel con i suoi componenti

Ho una domanda sul trascinamento e rilascio: posso rilasciare etichette, testo o icona. Ma voglio trascinare e rilasciare un JPanel con tutti i suoi componenti (Label, Textbox, .. ecc.). Come posso fare questo ?

Come impostare AUTO-SCROLLING di JTextArea nella GUI Java?

Ho incorporato un JTextArea su un JScrollPane e sto usando quel JTextArea per l’output. Voglio che ogni volta che l’output supera la dimensione di JTextArea, il JTextArea scorre automaticamente in modo che l’utente non debba scorrere manualmente verso il basso per vedere l’output recente. Come lo posso fare? Ho già impostato la proprietà autoscroll di […]

Come posso impostare il colore di sfondo di una JLabel?

Nel mio JPanel , ho impostato lo sfondo di una JLabel su un colore diverso. Riesco a vedere la parola “Test” ed è blu, ma lo sfondo non cambia affatto. Come posso farlo mostrare? this.setBackground(Color.white); JLabel label = new JLabel(“Test”); label.setForeground(Color.blue); label.setBackground(Color.lightGray); this.add(label);

Ridimensionando l’icona per adattarla a JButton in Java?

Ogni volta che imposto un’icona per il mio JButton, non viene sempre ridimensionata correttamente. Come posso ridimensionare l’icona per adattarla completamente al pulsante? final JButton btnSanic = new JButton(); Image img = icon.getImage(); Image newimg = img.getScaledInstance(width, height, java.awt.Image.SCALE_SMOOTH); icon = new ImageIcon(newimg); btnSanic.setIcon(icon);

Ottieni una chiave da JTextArea

Tutto quello che voglio fare, Se sto premendo ‘{‘ questa chiave in JtextArea.automatically ‘}’ verrà stampato anche questo. if(evt.KEY_PRESSED == ‘{‘) System.out.print(“}”); va bene?

KeyListener, keyPressed versus keyTyped

Ho una JFrame (beh, una class che estende JFrame) e voglio fare un’azione quando premo il tasto F5. Quindi, ho reso la class implementare KeyListener. E con questo, sono venuti tre metodi, keyPressed, keyReleased e keyTyped. Quale di questi metodi dovrei usare per ascoltare se F5 viene premuto? keyPressed o keyTyped? Attualmente ho il seguente, […]