Bilder aus lokalem Ordner holen

werner_sg

Erfahrenes Mitglied
#1
Hallo derzeit sind wie halt üblich alle Grafiken über Picturebox als System.Drawing.Bitmap eingebunden.
ich würde mir die Grafiken aber gerne direkt aus einem Ordner der Festplatte holen.

Sinn und Zweck soll sein das wenn ein anderes Bild gewünscht ist, dieses dann einfach im Ordner getauscht werden kann.

Bei Picturebox habe ich keine Möglichkeit gefunden eine externe Quelle einzugeben, für alternativ Vorschläge bin ich immer offen.

Und wenn ich schon mal dabei bin :) bin gerade dabei auch alle Texte und Beschriftungen in Text Datei auszulagern (gleiche Zweck) ganze Datei in Label anzeigen läuft wunderbar, habe aber noch nichts passendes gefunden expliziet nur eine einzige Zeile zu nehmen.

Goggle zwar gleich noch weiter nach Lösungen aber vieleicht seid Ihr ja schneller als meine Suche:confused:

Schon mal Danke für eure Unterstützung
 
#2
Hi

Ein Bild bekommt man zB. mit Image.FromFile.

Änderungen an der Datei zu erkennen ist etwas umständlicher, siehe zB. https://msdn.microsoft.com/de-de/library/system.io.filesystemwatcher(v=vs.110).aspx . Automatisch wird das nicht aktualisiert.

Und zur Textdatei ... wenn man Zeile 4 will muss man eben drei mal eine Zeile einlesen, den Text nirgends aufbehalten, und erst bei der vierten Zeile was damit machen. Etwas wie "springe zu Zeile x" gibts nicht (weil man nicht weiß, wie viel Byte jede Zeile hat).
 

werner_sg

Erfahrenes Mitglied
#3
Ok Danke für die erste Antwort,

mir reicht es wenn die aktualisierung beim starten erfolgt daher ist der filesystemwatcher nicht notwendig

MS zu Image.From.File

Code:
Private Sub DemonstratePropertyItem(ByVal e As PaintEventArgs)

    ' Create two images.
    Dim image1 As Image = Image.FromFile("c:\FakePhoto1.jpg")
    Dim image2 As Image = Image.FromFile("c:\FakePhoto2.jpg")

    ' Get a PropertyItem from image1.
    Dim propItem As PropertyItem = image1.GetPropertyItem(20624)

    ' Change the ID of the PropertyItem.
    propItem.Id = 20625

    ' Set the PropertyItem for image2.
    image2.SetPropertyItem(propItem)

    ' Draw the image.
    e.Graphics.DrawImage(image2, 20.0F, 20.0F)
End Sub
hilft mir nicht wirklich weiter will das Bild nicht neu zeichnen sondern wenn möglich in einer Picturebox oder so angezeigt haben wenn möglich.

zum Text in der Richtung war und bin ich auch schon mit read.line, habe bis jetzt im Google Dschungle aber nur diverse unvollständige Erklärungen mit anderer Zielsetzung und total unterschiedlichen Ansätzen gefunden

Code:
Label2.Text = System.IO.File.ReadLines("C:/umfrage/texte/Button.txt", 2)
Das sollte die Zuweisung für das Label sein nur gibt er mir da den Fehler "der Typ von Integer kann nicht in Encoding konvertiert werden"
 

werner_sg

Erfahrenes Mitglied
#4
So habe die Lösung gefunden

Bilder werden wie andere Zuweisungen nur halt mit dem oben erwähntem image.fromfile zugewiesen

ne simple Lösung die man bei MSDN nicht bekommt und bei Google erst weit hinten

Code:
PictureBox2.Image = Image.FromFile("C:/umfrage/pictures/service.png")
 

Neue Beiträge