Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    339

    Elementi JComboBox e dimensione JComboBox

    Ciao a tutti.

    Sto lavorando ad una interfaccia grafica che gestisce degli oggetti "Articolo"

    In questa interfaccia ho messo dei JComboBox , ciascuno dei quali visualizza un campo istanza di un oggetto Articolo.

    Un JComboBox visualizza il campo TipoMerce
    Un altro visualizza il campo Marca
    Un altro visualizza il campo Modello

    Vorrei che questi comboBox non visualizzassero campi uguali

    Per esempio se io aggiungo due oggetti di tipo Computer , nel box non deve essere visualizzato due volte Computer.

    Inoltre non riesco a mantenere la dimensione del JComboBox da me impostata , quando ci metto dentro una Stringa la dimensione del box cambia , vorrei che restasse quella che ho impostato io

    Ho provato con il metodo SetPreferredSize() ma niente.

    Mi Aiutate?

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2011
    Messaggi
    14
    Allora se ho capito bene non vuoi che ci siano due articoli con lo stesso TipoMerce nel JComboBox, ma questo TipoMerce è un oggetto? Così potresti confrontare il TipoMerce da aggiungere con quelli già presenti con il metodo equals.

    Per quanto riguarda la dimensione dipende dal layout che usi, con queste informazioni non so aiutarti

    Spero di essere stato di aiuto
    Ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    339
    no TipoMerce è un campo istanza dell'oggetto articolo

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    339
    Sto utilizzando il GridBagLayout

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    339

    Di nuovo Elementi JComboBox e dimensione JComboBox

    Ciao a tutti.

    Sto lavorando ad una interfaccia grafica che gestisce degli oggetti "Articolo"

    In questa interfaccia ho messo dei JComboBox , ciascuno dei quali visualizza un campo istanza di un oggetto Articolo.

    Un JComboBox visualizza il campo TipoMerce
    Un altro visualizza il campo Marca
    Un altro visualizza il campo Modello

    Vorrei che questi comboBox non visualizzassero campi uguali

    Per esempio se io aggiungo due oggetti di tipo Computer , nel box non deve essere visualizzato due volte Computer.

    Inoltre non riesco a mantenere la dimensione del JComboBox da me impostata , quando ci metto dentro una Stringa la dimensione del box cambia , vorrei che restasse quella che ho impostato io.

    Utilizzo il GridBagLayout per la disposizione degli elementi

    Ho provato con il metodo SetPreferredSize() ma niente.

    Mi Aiutate?

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157

    Re: Di nuovo Elementi JComboBox e dimensione JComboBox

    Originariamente inviato da Markus85
    Ciao a tutti.

    Sto lavorando ad una interfaccia grafica che gestisce degli oggetti "Articolo"

    In questa interfaccia ho messo dei JComboBox , ciascuno dei quali visualizza un campo istanza di un oggetto Articolo.

    Un JComboBox visualizza il campo TipoMerce
    Un altro visualizza il campo Marca
    Un altro visualizza il campo Modello

    Vorrei che questi comboBox non visualizzassero campi uguali
    Per esempio se io aggiungo due oggetti di tipo Computer , nel box non deve essere visualizzato due volte Computer.
    Senza vedere codice la vedo dura, penso sia una questione di come valorizzi gli elementi e/o da cosa fai visualizzare.
    Sei sicuro che quando visualizzi la lista selezioni l'elemento corretto? come lo selezioni?
    soprattutto, hai un problema di campi doppi, ma una spiegazione migliore? veramente è difficile capire su quale box vedi il doppio

    Originariamente inviato da Markus85

    Inoltre non riesco a mantenere la dimensione del JComboBox da me impostata , quando ci metto dentro una Stringa la dimensione del box cambia , vorrei che restasse quella che ho impostato io.

    Utilizzo il GridBagLayout per la disposizione degli elementi
    non le ricordo a memoria, devi giocare con i constraints del gridbaglayout, guarda bene la doc

    che differenza c'è con questa discussione?
    RTFM Read That F*** Manual!!!

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    339
    Ciao. Ho riaperto la discussione perchè mi avevano.....diciamo..."Abbandonato" XD XD.

    Cerco di spiegarti meglio il problema.

    Allora io mi sono creato un oggetto Articolo , che ha dei campi istanza che sono Tipo, marca , modello ecc

    codice:
    public class Articolo implements Serializable {
    
    private String Tipo;
    private String Marca;
    private String Modello;
    ....
    ....
    .... // Ecc. ecc.
    
    }
    Ho fatto un interfaccia grafica che contiene dei JComboBox

    Ciascuno di questi JComboBox deve visualizzare rispettivamente la stringa Tipo , la stringa Marca, la stringa Modello.

    Cioè uno deve visualizzare la stringa Tipo
    un altro la stringa Marca
    un altro ancora la stringa Modello

    In questa interfaccia grafica è presente un bottone che permette di aggiungere Articoli.

    Ad ogni aggiunta questi JComboBox si "aggiornano"

    Per esempio :

    Aggiungo L'articolo di tipo Computer , marca Asus , modello G1

    In un JComboBox ci sarà Computer
    in un altro Asus
    in un altro G1

    Il problema è che se vado ad aggiungere un altro articolo che è pure di Tipo Computer ,
    nel JComboBox si visualizza due volte Computer.



    Per quanto riguarda la dimensione del JComboBox :

    Ho fatto una classe di supporto (si chiama GBC) per rendere più comoda la scrittura del codice per quanto riguarda l'utilizzo di GridBagLayout.

    per il posizionamento del JComboBox ho scritto il seguente codice :

    codice:
    MerceSelezionataBox = new JComboBox();
    PannelloA.add(MerceSelezionataBox, new GBC(2,1).setIpad(120,0).setWeight(50,50));
    Avevo letto che per mantenere la dimensione bisognava utilizzare i parametri fill e anchor

    Ho provato cosi ma niente

    codice:
    MerceSelezionataBox = new JComboBox();
    PannelloA.add(MerceSelezionataBox, new GBC(2,1).setIpad(120,0).setWeight(50,50).setFill(GBC.HORIZONTAL));


    Ti posto la classe GBC per una maggiore chiarezza

    codice:
    public class GBC extends GridBagConstraints{
    	
    	   public GBC(int gridx, int gridy)
    	   {
    	      this.gridx = gridx;
    	      this.gridy = gridy;
    	   }
    
    	   
    	   public GBC(int gridx, int gridy, int gridwidth, int gridheight)
    	   {
    	      this.gridx = gridx;
    	      this.gridy = gridy;
    	      this.gridwidth = gridwidth; 
    	      this.gridheight = gridheight; 
    	   }
    
    	  
    	   public GBC setAnchor(int anchor) 
    	   { 
    	      this.anchor = anchor; 
    	      return this;
    	   }
    	   
    	
    	   public GBC setFill(int fill) 
    	   { 
    	      this.fill = fill; 
    	      return this;
    	   }
    
    	 
    	   public GBC setWeight(double weightx, double weighty) 
    	   { 
    	      this.weightx = weightx; 
    	      this.weighty = weighty; 
    	      return this;
    	   }
    
    	   
    	   public GBC setInsets(int distance) 
    	   { 
    	      this.insets = new Insets(distance, distance, distance, distance);
    	      return this;
    	   }
    
    	 
    	   public GBC setInsets(int top, int left, int bottom, int right) 
    	   { 
    	      this.insets = new Insets(top, left, bottom, right);
    	      return this;
    	   }
    
    	   
    	   public GBC setIpad(int ipadx, int ipady) 
    	   { 
    	      this.ipadx = ipadx; 
    	      this.ipady = ipady; 
    	      return this;
    	   }
    	   
    	}// GBC

    Delucidami XD XD

    CIAO

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    Originariamente inviato da Markus85
    Ciao. Ho riaperto la discussione perchè mi avevano.....diciamo..."Abbandonato" XD XD.
    regolamento
    Originariamente inviato da Markus85
    Cerco di spiegarti meglio il problema.

    Allora io mi sono creato un oggetto Articolo , che ha dei campi istanza che sono Tipo, marca , modello ecc

    codice:
    public class Articolo implements Serializable {
    
    private String Tipo;
    private String Marca;
    private String Modello;
    ....
    ....
    .... // Ecc. ecc.
    
    }
    Ho fatto un interfaccia grafica che contiene dei JComboBox

    Ciascuno di questi JComboBox deve visualizzare rispettivamente la stringa Tipo , la stringa Marca, la stringa Modello.

    Cioè uno deve visualizzare la stringa Tipo
    un altro la stringa Marca
    un altro ancora la stringa Modello

    In questa interfaccia grafica è presente un bottone che permette di aggiungere Articoli.

    Ad ogni aggiunta questi JComboBox si "aggiornano"

    Per esempio :

    Aggiungo L'articolo di tipo Computer , marca Asus , modello G1

    In un JComboBox ci sarà Computer
    in un altro Asus
    in un altro G1

    Il problema è che se vado ad aggiungere un altro articolo che è pure di Tipo Computer ,
    nel JComboBox si visualizza due volte Computer.
    anche qui vado ad intuito, perché non so come leghi i dati alla combobox

    Originariamente inviato da Markus85
    Per quanto riguarda la dimensione del JComboBox :

    Ho fatto una classe di supporto (si chiama GBC) per rendere più comoda la scrittura del codice per quanto riguarda l'utilizzo di GridBagLayout.

    per il posizionamento del JComboBox ho scritto il seguente codice :
    a che pro?
    che utilità hai? Soprattutto considerando che non aggiungi funzionalità né le modifichi.
    Originariamente inviato da Markus85

    Avevo letto che per mantenere la dimensione bisognava utilizzare i parametri fill e anchor

    Ho provato cosi ma niente
    no devi ricordarti come distribuire lo spazio in eccesso e c'è il weight, un double, che indica come sfrutta lo spazio in eccesso.
    Un altro parametro indica quanto spazio lasciare tra il componente e la griglia di riferimento.
    Abbi pazienza, non ricordo i nomi, ma la doc oracle è ben fatta
    RTFM Read That F*** Manual!!!

  9. #9
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,465

    Moderazione

    Originariamente inviato da Markus85
    Ciao. Ho riaperto la discussione perchè mi avevano.....diciamo..."Abbandonato" XD XD.
    Ti è già stato detto di non farlo, e più di una volta (vedi qui).

    Ho unito le discussioni.

    Se non vuoi essere tu ad abbandonare il forum, ti consiglio di astenerti da questi abusi.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    339
    Come lego i dati nella JComboBox? Intendi come inserisco elementi ?

    Con il metodo addItem() ; faccio cosi :

    codice:
    Articolo ArticoloAggiunto = new Articolo(.....);
    
    MerceSelezionataBox.addItem(ArticoloAggiunto.getTipo());


    Per quanto riguarda la classe GBC ; è una classe di supporto per lavorare meglio con il GridBagLayout (Dettagli nel libro Core Java 2 volume 1 fondamenti pag. 441)

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.