Jag undrar hur man infogar en picturebox i en form med kod. Jag vill också kunna ta bort den. Om det bara är en picturebox så är det nog enklast att bara växla egenskapen Visible (True/False) på en som du skapat i designtime. För att skapa en picturebox eller annat objekt: en optimering av borttagningen, Tack för det snabba svaret Jag ser nu att om man snokar lite under rubriken #Region " Windows Form Designer generated code " Så ser man ju hur man gör.Infoga picturebox under körning.
MVH
indurainSv: Infoga picturebox under körning.
Sv: Infoga picturebox under körning.
Dim pbox As New PictureBox()
'valfria:
pbox.Image = Image.FromFile("bildnamn som utgår från bin") 'bild
pbox.Location = New System.Drawing.Point(x, y) 'location
pbox.Size = New System.Drawing.Size(47, 15) 'storlek
pbox.Name = "softkloss" 'namn
pbox.BackColor = System.Drawing.Color.yellow() 'bgfärg
form1.Controls.Add(pbox)
För att ta bort det:
Dim c As Control
Dim i As Integer
For i = 0 To 10
For Each c In me.Controls
If c Is Nothing Then
Else
If InStr(c.Name, "pbox") Then
c.Dispose()
End If
End If
Next
Next
i-for-slingan beror på att det verkar vara nått fel i "for each". Om du skapar många objekt verkar det inte som den kollar alla objekt men om man kör den några gånger så går den igenom alla.
Mvh
/Peter ISv: Infoga picturebox under körning.
if Me.Controls.Contains(pbox) then
Me.Controls.Remove(pbox)
endif
allanSv: Infoga picturebox under körning.
form1.Controls.Add(pbox) fungerade inte men.
Me.Controls.Add(pbox) Fungerar.
För att ta bort den funkade
Me.Controls.Remove(pbox)
Nästa fråga.
Hur får jag fram händelserna för detta objekt, jag vill att den ska vara klickbar.Sv: Infoga picturebox under körning.
Denna kod funkar också. Man för även med händelserna
<code>
Friend WithEvents test As System.Windows.Forms.PictureBox
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.test = New System.Windows.Forms.PictureBox()
With test
.BorderStyle = BorderStyle.None
.Size = New System.Drawing.Size(20, 150) 'storlek
.BackColor = (System.Drawing.Color.Red)
.Dock = DockStyle.Left
End With
Me.Controls.Add(test)
End sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Me.Controls.Remove(test)
End Sub
</code>