KOD cpp: UKRYJ
System::Void ANTD_add_images::Exit_Click(System::Object^ sender, System::EventArgs^ e)
{
kataloger::add_new_to_database ^ adn = %add_new_to_database();
adn->ADD_NEW_Added_Images_textBox->Text = "45";
adn->ADD_NEW_Cast_richTextBox->AppendText("dsfsdfsd");
this->Close();
}
{
kataloger::add_new_to_database ^ adn = %add_new_to_database();
adn->ADD_NEW_Added_Images_textBox->Text = "45";
adn->ADD_NEW_Cast_richTextBox->AppendText("dsfsdfsd");
this->Close();
}
Mam coś takiego ANTD_add_images to forma wywołana na add_new_to_database, tak więc add_new_to_database jest cały czas uruchomione w tle (czeka na zakończenie ANTD_add_images). Jak w kodzie widać chciałem utworzyć coś na kształt referencji i odnieść się do obiektu by "władować" mu dane. Efektem miałby być zwyczajnie update lub bardziej zwyczajne uzupełnienie pól tekstowych formy add_new_to_database. Jednak przy odpaleniu programu dostaje info, że obiekt został już usunięty z pamięci. Dlaczego ? Jeśli cały czas był w tle to nie powinno do tego dojść. Co więcej. Błąd dotyczy obiektu richTextBox, a to zwykłego textBox tekst mogę wrzucić co nie zmienia faktu, że go nie wyświetla w oknie. Przy debbugowaniu pokazuje, że dane zostały umieszczone w obiekcie textBox, czyli dostęp jest. W richTextBox oczywiście nie ma. Co robię źle ? Może jest jakaś funkcja do "update" całego okna, czy odświeżania obiektów ? Jakoś nie mogę dojść co jest nie tak. Aha. Tak w ogóle to mało jest informacji o "%" i w książce i w internecie. Czym jest ten operator ? Chciałem zastosować referencję, a kompilator "zaproponował" by użyć tego symbolu. Tak na prawdę to jeszcze nie wiem co napisałem ; p Kiedyś to stosowałem i nie pytałem czym to jest, bo wszystko działało idealnie, ale teraz zaczynam mieć wątpliwości.