Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14

Discussione: Applicazione Desktop

  1. #1

    Applicazione Desktop

    (Vorrei creare un'applicazione Desktop, collegata ad un DB.
    In una delle finestre ci sarà un pannello con un JTabbedPane, ed in ogni Tab aperto (dinamicamente, può aprire uno o più Tabs) devo aggiungere una lista di cose da comprare scegliendo i prodotti da una JTable.

    Es. Pannello Spesa:
    Tab_Colazione → latte, biscotti, ...
    Tab_Pranzo → pane, acqua, pasta, frutta, ...
    Tab_Cena → carne, insalata, frutta, ...

    Come faccio alla fine a fare il resoconto globale della roba che ho comprato? Metti che decido di "non pranzare" e di voler eliminare tutta la lista del pranzo?!

    In sostanza, come mi consigliate d'impostare il codice?

  2. #2
    Il miei dubbi sono sostanzialmente 2:

    1) se per memorizzare gli elementi mi conviene usare una collection oppure basta un Array (credo ArrayList) globale e popolarlo ad ogni inserimento/rimozione

    2) usare un ArrayList bidimensionale, uno per ogni TAB aperto, e poi alla fine sommare il contenuto di tutti.


    Quello che mi serve è che alla fine mediante un Bottone possa popolare il mio DB con tutti gli elementi inseriti nella JList di ogni Tab.

  3. #3
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Un hashmap che mappi il nome del tab a dei set (così gli elementi rimangono unici).
    Per unirli crei un nuovo set e usi la funzione addAll iterando sugli elementi dell'hashmap.
    Gli elementi del set finale saranno unici!
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  4. #4
    Vediamo se ho capito (sono newbie, ma qualcosa ho letto):

    Map<NomeTab, Set_di_ElementidellaJList> Elementi = new Hashmap();

    dove il "NomeTab" è la chiave univoca... e Set_elementi... sono tutti gli elementi che ho inseriti nella JList di ciascuna Tab... Scusa la domanda banale ma non vorrei aver capito male: come set_di_elementi mi conviene usare un ArrayList o un Set?

    Domanda? Ma a questo punto per riavere tutti gli elementi non potrei fare un ciclo per ogni tab con il relativo subciclo per ogni Set_di_elementi?


  5. #5
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Se vuoi tenerli in una struttura dati organizzata anche nel tuo codice propongo un'HashMap<String, HashSet<String>> in modo da associare il nome della tabella ad una lista di elementi unici.
    Altrimenti scorri gli elementi sulle tue tab e gli aggiungi ad un'HashSet con la funzione add. Gli elementi rimangono unici trattandosi di un set!
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  6. #6
    Quindi popolando l'HashMap dovrei avere qualcosa del genere:

    "Tab_Colazione" → {latte, biscotti}
    "Tab_Pranzo" → {pasta, frutta, acqua}
    "Tab_Cena" → {carne, frutta, acqua}

    Attraverso l'iterazione di HasphMap dovrei ottenere un ArrayList Cibi complessivo contenente: {latte, biscotti, pasta, frutta, acqua, carne, frutta, acqua}

    E facendo un'iter su tale Array vado a popolare il mio DB?

    Se io eliminassi Tab_Pranzo dovrei avere nell'ArrayList Cibi: {latte, biscotti, carne, frutta, acqua}

    E' qualcosa del genere?

  7. #7
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Si, solo che se usi l'HashSet al posto dell'ArrayList ogni elemento rimarrà unico, acqua non sarà presente 2 volte, che, da quel che ho capito, era ciò che volevi...
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  8. #8
    No... "acqua" deve risultare tante volte quante l'ho inserita... Quindi nella mia collection finale ci dovranno essere le due acque (una del Tab_Pranzo e l'altra del Tab_Cena).

  9. #9
    Aspetta che te la spiego bene...

    Devo realizzare un gestionale per un lab di analisi cliniche. Ogni paziente effettua l'accettazione, un pannello (nuova accettazione) con un JTabbedPane:

    * Tab_Generalità → Nome, cognome, data nascita, luogo nascita, Cod Fiscale, residenza, ecc. ecc.

    * Tab_Analisi → si divide in due pannelli:
    - Analisi senza_Ricetta_Medica: private, che magari il paziente vuole richiedere di suo...
    - Analisi con_RicettaMedica vorrei mettere un altro JTabbedPane per poter aprire dinamicamente tanti Tab quante sono le ricette che presenta... In ogni ricetta ci sono massimo 8 analisi (e possono essere anche doppie, triple... ci sono dei cicli in cui il medico prescrive la stessa analisi più volte).

    * Tab_Info → tempo previsto esecuzione, costi, ricapitolazione analisi totale, note, campi obligatori non editati, ecc... ecc...


    Alla fine della compilazione di tutti i campi... devo interaggire con il DB per inserire tutti i campi editati.

  10. #10
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Allora usi ArrayList e add
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

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.