Witam, jestem w trakcie pisania programu. Mam kłopot z przesłaniem nazwy obiektu jako argument w funkcji. Kod poniżej na pewno pozwoli zrozumieć co dokładnie mam na myśli.
void wczytajj_ComboBox(char* plik, int klasa);
//-------------------------------------------------
void wczytaj_ComboBox(char* plik, int klasa)
{
//inicjujemy INI
TIniFile * Ini = new TIniFile(ExtractFileDir(Application->ExeName) + plik);
//deklarujemy zmienną int "ilosc" i przypisujemy jej wartosc z INI
int ilosc = Ini->ReadInteger("main", "numer", 0);
//deklarujemy zmienne
AnsiString odczyt;
//usuwamy zawartość listboxa
if(klasa == 1) { Form1->CB_Dystrybutor->Clear(); }
if(klasa == 2) { Form1->CB_Producent->Clear(); }
//każdy przebieg wprowadza dane do wykonywanego ComboBox
for(ilosc; ilosc >=1 ; ilosc--)
{
//odczytujemy nasze zmienne z pliku INI
odczyt = Ini->ReadString(ilosc, "pozycja", " ERROR ");
//dodajemy do listboxa pozycję z danymi
if(klasa == 1) { Form1->CB_Dystrybutor->Items->Add(odczyt); }
if(klasa == 2) { Form1->CB_Producent->Items->Add(odczyt); }
}
}
W funkcja wczytaj używa argumentu klasa do identyfikacji obiektu, dodawanie kolejnych obiektu jest uciążliwe nie mówiąc o tym, że jeżeli ktoś zmieni nazwę obiektu to program się wysypie. Proszę o pomoc jak zastąpić int klasa, parametrem dla obiektu.