|
| |

VB.NET - Ein- und Umsteiger| Re: Button zur Laufzeit erstellen | |  | | Autor: stefanbla80 | | Datum: 20.01.14 20:37 |
| Hallo Manfred,
vielen Dank für Deine Unterstützung.
Deinen Code habe ich geringfügig meiner Anwendung angepasst.
Public Class frmDynamic
Dim buttoncounter As Integer
Dim buttonlink As String
Dim ctlfile As String = "C:\Temp\controls.txt"
Private Sub frmDynamic_Load(ByVal sender As System.Object, ByVal e As _
System.EventArgs) Handles MyBase.Load
If Not IO.File.Exists(ctlfile) Then Exit Sub
'Gespeicherte Buttons erstellen
Dim ctlDaten() As String = IO.File.ReadAllLines(ctlfile)
For i As Integer = 0 To ctlDaten.Length - 1
If ctlDaten(i).StartsWith("Button") Then
buttoncounter += 1
Dim angaben() As String = ctlDaten(i).Split("|")
Dim t As Integer = CInt(angaben(1))
Dim l As Integer = CInt(angaben(2))
Dim link As String = CStr(angaben(3))
Dim btn As New Button With {.Parent = Me, .Top = t, .Left = l, _
.Text = link, .Tag = CStr(buttoncounter)}
AddHandler btn.Click, AddressOf ButtonNeu_Click
End If
Next i
End Sub
Private Sub frmDynamic_MouseDown(ByVal sender As Object, ByVal e As _
System.Windows.Forms.MouseEventArgs) Handles Me.MouseDown
If e.Button = Windows.Forms.MouseButtons.Right Then
'neuen Button erstellen
buttoncounter += 1
buttonlink = ""
Dim btn As New Button With {.Parent = Me, .Location = e.Location, _
.Text = TextBox1.Text, .Tag = buttoncounter}
'Angaben zum Button speichern
If Not IO.File.Exists(ctlfile) Then IO.File.Create(ctlfile)
Dim ctlDaten() As String = IO.File.ReadAllLines(ctlfile)
Array.Resize(ctlDaten, ctlDaten.Length + 1)
ctlDaten(ctlDaten.Length - 1) = "Button" & buttoncounter & "|" & _
CStr(btn.Top) & "|" & CStr(btn.Left) & "|" & btn.Text
'Click-Ereignis: Routine zuordnen
AddHandler btn.Click, AddressOf ButtonNeu_Click
IO.File.WriteAllLines(ctlfile, ctlDaten)
End If
End Sub
Private Sub ButtonNeu_Click(ByVal sender As System.Object, ByVal e As _
System.EventArgs)
Dim buttonlink As String = CStr(CType(sender, Button).Text)
Process.Start(buttonlink)
End Sub
End ClassHier funktioniert testweise aus die Zuweisung eines Links.
Meine Frage geht noch Richtung "Verschieben" der Buttons während der Laufzeit und das erneute Speichern dieser. Das bekommen ich aktuell nicht wirklich hin.
Habe im Forum noch Möglichkeiten gesucht, diese aber alle wieder verworfen.
Hast Du/Ihr einen Tip?!
Grüße
Stefan |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
TOP! Unser Nr. 1 
Neu! sevDataGrid 3.0
Mehrspaltige Listen, mit oder ohne DB-Anbindung. Autom. Sortierung, Editieren von Spalteninhalten oder das interaktive Hinzufügen von Datenzeilen sind ebenso möglich wie das Erstellen eines Web-Reports. Weitere InfosTipp des Monats Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
| |
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|