Pobieranie obrazka z obecnej lokalizcji

Pobieranie obrazka z obecnej lokalizcji
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam, mam problem z wczytaniem obrazka z obecnej lokalizacji do pictureboxa za pomocą metody Image.FromFile. Program często będzie zmieniał lokalizację, więc nie mogę pozwolić sobie na dodanie sztywnej ścieżki.
Fragment mojego kodu odpowiedzialny za wczytywanie wygląda tak:

Kopiuj
pb_obrazWe.Image = Image.FromFile("Obrazy testowe/fig.bmp");

screenshot-20170514144606.png
Jestem bardzo początkujący, więc proszę o "łopatologiczne" wyjaśnienia :D

FP
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 132
0

Scieżke można zapisać np do stringa, potem sprawdzic czy istnieje. (system.io.file.exists(tu parametr))
To Ci zwróci czy plik istenieje.
Jednak... mimo tego polecałbym "dotykanie" plików z try z uwagi z plik moze istnieć a wystapi problem np z uprawnieniami, albo problem sprzetowy w trakcie (np wyjecie usb)..

Poza tym, nie uzywałbym do konstrukcji scieżek znaków / czy \ tylko albo uzywac Path.Combine albo wykorzystywac separatory (katalogow, partycji, ścieżek).
I ile / w nowych win przejdzie to np separator sciezek jest zupenie inny(tak jak sep partycji).

Tak samo jak znak nowej lini. Nie zadne \n.tylko Environment.NewLine.

Czesto widze wstawianie / albo \ u senior programistow ;)
A potem problemy i tracenie czasu przy korzystaniu z logiki aby ja użyć w Xamarinie czy Unity na wiele platofm.

  • Rejestracja: dni
  • Ostatnio: dni
0

W sumie zapomniałem dopisać (nie wiem czy to coś zmieni)- przy otwieraniu korzystałem z tego:

Kopiuj
openFileDialog.InitialDirectory = Directory.GetCurrentDirectory() + "\\Obrazy testowe";

i próbowałem jakoś analogicznie wpiąć jakiś obrazek na starcie z folderu należącego do tego, gdzie jest projekt. Nie ma na to jakiegoś prostego sposobu?

  • Rejestracja: dni
  • Ostatnio: dni
0

Problem rozwiązałem przez dodanie obrazka do resources, a później:

Kopiuj
pictureBox1.Image = Properties.Resources.myImage;

Dzięki za odpowiedzi
Pozdrawiam

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.