Dim lines() AsString= IO.File.ReadAllLines(Application.StartupPath & "/link/PictureBox" & i & ".txt")
pic.Image = Image.FromFile(lines(0))
Next
Fehlermeldung: Object reference not set to an instance of an object.
danke
Schäm dich nicht "Zu fragen", schäm dich "Nicht zu wissen".
1. Option STrict ON
2. werden Pfade nicht mit "\" verbunden? Du hast "/" dazwischen stehen?
3. bekommt jede Picturebox das gleiche Bild?
4.
VB.NET-Quellcode
dim pic as [b]new[/b] picturbox
nein jede picturebox holt sich den pfad von ...picturebox(i).txt
also der pfad von picturebox1 steht in picturebox1.txt
...... picturebox2 steht in picturebox2.txt usw...
aber was mach ich falsch???
Schäm dich nicht "Zu fragen", schäm dich "Nicht zu wissen".
Du erstellst keine neue Instanz der Klasse PictureBox, sondern nur eine Variable von dem Typ.
VB.NET-Quellcode
Dim pic as [b]new [/b]PictureBox
Ansonsten Option Strict On, daher i.toString() statt i.
iel
VB.NET-Quellcode
pic.Name ="PictureBox" & i.toString()
Dim lines() AsString= IO.File.ReadAllLines(Application.StartupPath & "/link/PictureBox" & i.toString() & ".txt")
Außerdem wird das ganze dann nicht funktionieren, weil du die PictureBox noch zu der Form hinzufügen musst.
VB.NET-Quellcode
Me.Controls.Add(pic)
Tipp: Die Position kannst du mit
VB.NET-Quellcode
pic.Position =New Point(xkoordinate, ykoordinate)
setzen.
Viel Erfolg,
Manawyrm
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Manawyrm“ ()
1. lies meinen Post mal komplett durch. Du hast den Pfad falsch zusammengebaut.
2. Warum für jeden Pfad eine eigene Datei, vor allem wenn du ja eh jeden Dateiinhalt in ein Array einliest?
3. du musst die Picturebox mit new definieren
Willst du neue PictureBoxes erstellen oder auf vorhandene zugreifen?
Neu -> mit 'New' instanzieren
Vorhanden -> containerControl.Controls(controlName) ,
z.B. CType(Me.Controls("PictureBox123"), PictureBox).Image = ...
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „xtts02“ ()
danke leute aber ihr habt mich nicht verstanden
ich mochte keine neue picturebox erstellen
ich hab auf meine form31 picturebox und moechte jede picturebox image hochladen aber in einer schleife
image von picturebox1 steht in der datei picturebox1.txt drinnen
image von picturebox2 steht in der datei picturebox2.txt drinnen
image von picturebox3 steht in der datei picturebox3.txt drinnen
image von picturebox4 steht in der datei picturebox4.txt drinnen
.....
wie mach ich das bitte??
!!!!!!!!!!!!!! ERLEDIGT !!!!!!!!!!!!!
DANKE XTTS und alle andere
XTTS hat mich verstanden
VB.NET-Quellcode
For i AsInteger=1To31
Dim lines() AsString= IO.File.ReadAllLines(Application.StartupPath & "/link/PictureBox" & i.ToString & ".txt")
Schäm dich nicht "Zu fragen", schäm dich "Nicht zu wissen".
Was wird bei diesem Test angezeigt?
Stimmt es mit sdem überein, was Du glaubst, das es angezeigt werden soll?
VB.NET-Quellcode
Dim lines() AsString= IO.File.ReadAllLines(Application.StartupPath & "/link/PictureBox" & i.ToString & ".txt")
MessageBox.Show(lines(0))
Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch
Ein guter .NET-Snippetkonverter(der ist verfügbar). Programmierfragen über PN / Konversation werden ignoriert!
Also Manawyrm hats dir schon vorher (sogar besser) erklärt als xtts02..