Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Accedere a JTextFeld di un JPanel usando Reflection

    Bongiorno.
    Data una classe siffatta:

    public class CurrentRecord extends JPanel{
    JTextField id_corso;
    JTextField nome_corso;
    JTextField id_tipo_corso;
    JTextField tipo_corso;
    public CurrentRecord() {
    ...

  2. #2
    Scusate, uno scossone del treno ha fatto partire l'invio

    Dicevo: data la classe:
    codice:
    public class CurrentRecord extends JPanel{
    	JTextField id_corso;
    	JTextField nome_corso;
    	JTextField id_tipo_corso;
    	JTextField tipo_corso;
    	public CurrentRecord() {
                  ...
                 }
    }
    voglio accedere ai JTextField per nome, mediante una cosa del genere:

    codice:
    public void AssegnaValori(String nome, String valore) {
    		try {
    			Field f = p.getClass().getDeclaredField(nome);
    			Class<?> c = f.getType();
    			if(c.equals(JTextField.class)) {
    				JTextField t = (JTextField)c.newInstance();
    				t.setText(valore);
    				
    				f.set(p, t);
    			}
    			String s = f.toString();
    			s = s;
    		}
    		catch(NoSuchFieldException | IllegalAccessException | InstantiationException e) {
    			System.out.println(e.getMessage());
    		}
    }
    Col debug posso constatare che i campi f vengono aggiornati, ma nella finestra che contiene l'oggetto CurrentRecord i campi non vengono popolati. Perchè?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.