<div>non riesco a fare questo esercizio ho fatto la prima parte dei combobox  mi sono fermato a Gi items dei combobox FROM_U:</div><div>non so come impostare quella funzione </div><div><br></div><div>QUESTO E L ESERCIZIO:</div><div>'''L'esercizio chiede di implementare un'applicazione con GUI tramite Qt in modo
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">analogo a quanto visto nella lezione sulle Interfacce Utente. L'applicazione e'</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">un semplice convertitore tra unita' di misura (ad es. da litri a centimetri</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">cubi). La window dell'applicazione deve avere titolo 'program01' e deve</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">contenere i seguenti widget:</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-paragraph-type: empty;"><br></p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">- Un combobox (QComboBox) di nome 'UNIT' che permette di scegliere il tipo</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">  di unita' di misura e deve contenere i seguenti items in quest'ordine:</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">  'lunghezza', 'area', 'volume'.</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">- Un campo (QLineEdit) di nome 'FROM_NUM' in cui l'utente puo' inserire il</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">  numero che vuole convertire.</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">- Un combobox (QComboBox) di nome 'FROM_U' che permette di scegliere l'unita'</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">  di misura del numero nel campo 'FROM_NUM'. Piu' avanti sono specificati gli</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">  items di tale combobox.</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">- Un combobox (QComboBox) di nome 'TO_U' che permette di scegliere l'unita'</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">  di misura a cui convertire. Piu' avanti sono specificati gli items di tale</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">  combobox.</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">- Una label (QLabel) di nome 'TO_NUM' che visualizza il risultato della</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">  conversione.</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-paragraph-type: empty;"><br></p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">I nomi dei widget si impostano con il metodo setObjectName(). Per impostare gli</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">items di un combobox si puo' usare il metodo insertItems(). Per eliminare tutti</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">gli items di un combobox si puo' usare il metodo clear(). Il comportamento dei</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">widget deve rispettare le seguenti specifiche.</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-paragraph-type: empty;"><br></p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">Gli items dei combobox 'FROM_U' e 'To_U' dipendono dall'item corrente del</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">combobox 'UNIT'. Per ognuno dei tre items del combobox 'UNIT' gli items dei</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">combobox 'FROM_U' e 'To_U' devono essere (ripettare ordine e nomi):</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-paragraph-type: empty;"><br></p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">'lunghezza' --> 'chilometri','metri','centimetri','millimetri'</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">'area'      --> 'chilometri quadri','ettari','metri quadri','centimetri quadri','millimetri quadri'</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">'volume'    --> 'metri cubi','centimetri cubi','millimetri cubi','litri','decilitri','centilitri','millilitri'</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-paragraph-type: empty;"><br></p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">Il signal activated avvisa quando l'utente cambia l'item corrente di un combobox</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">e la callback riceve come argomento l'indice del nuovo item corrente. Per</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">conoscere, in un qualsiasi momento, l'indice dell'item corrente si puo' usare il</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">metodo currentIndex().</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-paragraph-type: empty;"><br></p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">Inizialmente tutti i combobox devono avere l'item corrente di indice 0, il campo</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">'FROM_NUM' e la label 'TO_NUM' devono avere contenuto vuoto (cioe'la stringa</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">vuota).</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-paragraph-type: empty;"><br></p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">Quando e' premuto il Return sul campo 'FROM_NUM' il valore numerico in esso</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">contenuto e' convertito secondo le unita' di misura relative agli items correnti</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">nei combobox 'FROM_U' e 'TO_U'e il risultato e' posto nella label 'TO_NUM'. Ad</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">esempio, se nel campo 'FROM_NUM' c'e' il numero 1.5 e in 'FROM_U' l'item corrente</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">e' 'litri' e in 'TO_U' l'item corrente e' 'centimetri cubi', allora nella label</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">'TO_NUM' sara' visualizzato 1500.</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-paragraph-type: empty;"><br></p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">Anche quando l'item corrente di uno dei tre combobox cambia, sara' effettuata la</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">conversione e sara' aggiornato il contenuto della label 'TO_NUM'.</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-paragraph-type: empty;"><br></p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">Si puo' assumere (per semplicita') che l'utente digita solamente numeri validi</p>
<p style="margin: 0px; text-indent: 0px; -qt-block-indent: 0; -qt-user-state: 0;">nel campo 'FROM_NUM'.</p></div>