Mam pictureboxa, a w nim załadowany obrazek o nazwie "przykład.png". W jaki sposób pobrać nazwę tego obrazka?
Obrazek = "przyklad.jpg";
A tak naprawdę, to podczas wczytywania daj nazwę pliku do jakiejś zmiennej i już.
Z komponentu raczej nie wyciągniesz ścieżki do załadowanej grafiki. Musisz ją podczas ładowania przechować w jakiejś zmiennej globalnej.
No to się sprawa komplikuje...
BoZzDoG napisał(a)
Musisz ją podczas ładowania przechować w jakiejś zmiennej globalnej.
- W C# nie ma zmiennych globalnych.
- Zmienne globalne to zło, zwłaszcza w tym przypadku.
prisixn napisał(a)
No to się sprawa komplikuje...
Co się komplikuje? Nie umiesz zrobić zmiennej typu string
w klasie?
somekind napisał(a)
Co się komplikuje? Nie umiesz zrobić zmiennej typu
string
w klasie?
Ale nie wczytuję obrazka z dysku, tylko losuję z listy bitmap.
No, ale wcześniej chyba dodawałeś je do tej listy bitmap, tak? To sobie jeszcze zapisuj ścieżkę do nich podczas dodawania
Wszystkie obrazki są w Resource i stamtąd ładuję je do listy.
No to skoro są tam statycznie to zrób sobie jakąś listę nazw tych obrazków w programie, po co chcesz to pobierać, skoro z góry wiesz co tam jest?
Wiem co jest, ale obrazek jest losowany i muszę znać nazwę wylosowanego obrazka żeby móc go porównywać dalej w programie.
Ale już sobie poradziłem. Dodałem w programie jeszcze jedną tablice w której przetrzymuję nazwy wszystkich obrazków i po prostu porównuję indeksy listy z indeksami tablicy.
somekind napisał(a)
- W C# nie ma zmiennych globalnych.
- Zmienne globalne to zło, zwłaszcza w tym przypadku.
- Fakt, nie zwróciłem uwagi... xD
- Globalne zmienne tak, ale prywatne klasy jak najbardziej, zgadzam się w pełni.
prisixn napisał(a)
Wiem co jest, ale obrazek jest losowany i muszę znać nazwę wylosowanego obrazka żeby móc go porównywać dalej w programie.
A losujesz plik z zasobów używając nazwy? Czegoś tu nie rozumiem... Jeżeli wyciągasz z zasobów obrazek według nazwy, to czego nie weźmiesz podczas ładowania obrazku do komponentu i nie zapiszesz tej nazwy do specjalnie przygotowanej zmiennej tak jak Ci podpowiada somekind? A jeżeli przez indeks to zapisz ją jak wyżej, tyle że to zmiennej liczbowej. Czemu dalej nie wiesz jak tą nazwę uzyskać?