Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Delphi - Associare il nome di un oggetto (ComboBox) a una variabile.
Forum - Delphi - Associare il nome di un oggetto (ComboBox) a una variabile.

Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 1:00
Giovedì, 01/01/1970
Ciao a tutti. Ho un problema:
Sto realizzando un programma in cui lavoro su 12 ComboBox differenti (tutti numerati come ComboBox1, ComboBox2 +...+ ComboBox12) ma nelle quali vi devono essere gli stessi Items. In realtà io devo inserire qui dentro tutti gli accordi musicali (dal La al Sol#) ma ho inserito un RadioGroupBox per scegliere tra la Nomenclatura Tradizionale e la Nomenclatura Internazionale. Ho associato ad una variabile array tutte le note (var Note(i) con i che va da 1 a 12, proprio quanto il numero delle note) e ho assegnato le due nomenclature alle variabili (cioè se è premuto il Radio1 per esempio la Note(4) diventa "DO" se premo il Radio2 la nota viene scritta come "C") e a seconda del radio assegno poi gli Items del ComboBox alle note... Solo che dato che i ComboBox sono 12, per alleggerire il codice mi chiedevo se esistesse un modo per rendere il suffisso del combo una variabile in modo da specificare gli items in una iterazione For... mi spiego: Invece di avere:
Codice sorgente - presumibilmente Plain Text

  1. ComboBox1 ... ComboBox2...


Mi piacerebbe avere
Codice sorgente - presumibilmente Delphi

  1. for i:= 1 to 12 do  ComboBox(i)....


solo che non so come applicarlo in codice, poichè ho provato questa scrittura, sia con tonde che con quadre ma niente...
Vi chiedo se per caso voi possiate aiutarmi...
Spero di essere stato chiaro. altrimenti mi scuso e sono pronto a dare chiarimenti...
Aspettando una risposta, vi porgo comunque un grande GRAZIE
a_butta

PS1: Ho usato le tonde invece delle quadre negli array per non aver problemi nel codice html della discussione (metteva tutto in corsivo)
PS2: se dovesse interessarvi, il mio programma si propone di creare un Transposer, cioè un programma dove selezionati degli accordi a piacere, si può adottare il transpose fino 11 semitoni su o giù e avere in uscita l'accordo risultante...

Ultima modifica effettuata da il 15/12/2009 alle 21:09
PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 14:34
Mercoledì, 16/12/2009
Non c'è nessuno che mi possa aiutare?
mi scuso se insisto, ma mi servirebbe con una certa urgenza...
Chiedo ancora scusa e rivolgo un grazie anticipatamente

PM Quote
Avatar
Anonymous (Member)
Guru


Messaggi: 1059
Iscritto: 30/07/2006

Segnala al moderatore
Postato alle 20:48
Mercoledì, 16/12/2009
ciao...

se ho capito bene la domanda dovresti semplicemente risolvere scrivendo una sola volta ogni cambio di note su un combobox e poi facendo:

Codice sorgente - presumibilmente Plain Text

  1. combobox2.items:=combobox1.items;



in questo modo combobox2 prenderà tutti gli items di combobox1

e poi ancora...

Codice sorgente - presumibilmente Plain Text

  1. combobox3.items:=combobox1.items;
  2. combobox4.items:=combobox1.items;
  3. ...
  4. combobox12.items:=combobox1.items;



cosi avrai queste 12 righe che copieranno ciascuna il contenuto della prima combobox in un altra combobox

PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 14:06
Giovedì, 17/12/2009
Ho risolto con
Codice sorgente - presumibilmente Delphi

  1. Application.FindComponent('ComboBox'+IntToStr(i)) As TComboBox



Grazie mille lo stesso!

PM Quote