Public Class Form1 Dim WithEvents mGrid As Griglia(Of Pannello) Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load mGrid = New Griglia(Of Pannello)(Me, True, 30, 5, 10, 10) For Each elemento As Pannello In mGrid AddHandler elemento.MouseDown, AddressOf Aggiungi Next End Sub Sub Aggiungi(sender As Object, e As MouseEventArgs) If e.Button = Windows.Forms.MouseButtons.Left Then Dim child As New miaLabel AddHandler child.MouseDown, AddressOf ClickContenuto sender.controls.add(child) Ridistribuisci(sender) End If End Sub Sub ClickContenuto(sender As Object, e As MouseEventArgs) If e.Button = Windows.Forms.MouseButtons.Left Then Aggiungi(sender.parent, e) Else Rimuovimi(sender) End If End Sub Private Sub Ridistribuisci(contenitore As Object) Dim base = 0 For Each C In contenitore.Controls C.width = contenitore.Width / contenitore.Controls.Count C.location = New Point(base * contenitore.Width / contenitore.Controls.Count, 0) base += 1 C.bringtofront() Next End Sub Sub Rimuovimi(contenuto As Object) Dim temp As Object = contenuto.parent contenuto.parent.controls.remove(contenuto) Ridistribuisci(temp) temp = Nothing End Sub End Class Class Pannello Inherits Panel Sub New() Width = 100 Height = 20 BorderStyle = Windows.Forms.BorderStyle.FixedSingle End Sub End Class...casomai dovessi dimenticarlo così lo prendo e lo riattacco pari pari...
Miei appunti liberi, senza pretesa di dire necessariamente sempre cose giuste o sensate, durante l'apprendimento e la pratica della programmazione
JavascriptProva
domenica 12 gennaio 2014
Appunti personali: il codice finora costruito
Riassumo qui l'ultimo codice:
Iscriviti a:
Commenti sul post (Atom)
Nessun commento:
Posta un commento