Vb.net modificare form

mercoledì 26 novembre 2008 - 09.04

frenk17 Profilo | Junior Member

ciao ragazzi questo è il mio codice...
avrei bisogno di qualche informazione
1)COME FACCIO A MODIFICARE IL CONTENUTO DI UNA PICTUREBOX A PROGRAMMA AVVIATO(FACENDO CLICK DESTRO SULL IMMAGINE), IL MIO PROBLEMA è CHE VOGLIO CHE APPAIA IL CLASSICO "SFOGLIA", COSì DA PERMETTERE ALL UTENTE DI SELEZIONARE UN IMMAGINE A SUA SCELTA
2) COME FACCIO A PERMETTERE ALL UTENTE DI RIDIMENSIONARE L IMMAGINE(ATTRAVERSO SOLO L USO DEL MOUSE)
3) COME FACCIO A MODIFICARE IL CONTENUTO SI UNA LABEL SEMPRE TRAMITE IL MENù CHE COMPARE FACENDO CLICK DESTRO SULL LABEL

grazie in anticipo

aiedail92 Profilo | Expert

Ciao

Ho guardato il tuo progetto, l'impostazione che hai dato non mi sembrava una delle più eleganti, quindi mi sono preso la libertà di fare qualche modifica...

Nel sorgente trovi la risposta a tutte e tre le tue domande

Luca

frenk17 Profilo | Junior Member

in effetti non era proprio il massimo:-)

ora prò ho ancora un problema... dovrei stampare l intero form

mi puoi aiutare?


aiedail92 Profilo | Expert

Puoi guardare questo articolo proprio su DotNetHell:

http://www.dotnethell.it/articles/PrintWindowsForms.aspx

Luca

frenk17 Profilo | Junior Member

si quella guida l avevo già letta però speravo ci fosse un metodo per stampare brutalmente il form anche perchè non riesco a capire come fare, avendo una lista di picturebox e una di label, quindi N picturebox ed M label, è come faccio a indicare le coordinate e le dimensioni delle singole immagini...
avevo pensato a una cosa del genere ma mi da errore...

Dim pictureBoxes As New List(Of PictureBox)
.
.
.
.
e.Graphics.DrawImage(pictureBoxes, pictureBoxes.Left, PictureBoxs.Right, pictureBoxes.Width, pictureBoxes.Height)

aiedail92 Profilo | Expert

Non so se come effetto ti va bene, ma potresti usare il metodo DrawToBitmap della Form oppure ciclandolo su tutti i controlli.

Luca

frenk17 Profilo | Junior Member

e ma come faccio a ciclare su tutte le picturebox ..
io pensavo di fare un ciclo do loop dove verificare l esistenza della picturebox e se verifico che esiste la stampo...
ma cone faccio a dire di di stampare l immagine che c'è già nella textbox , della stessa dimensione e posizione che è nel form...
perchè devo per forza fare un ciclo, perchè non so quante picturebox inserirà l utente, ma come faccio?

aiedail92 Profilo | Expert

Se ricordo bene, nell'esempio ti avevo lasciato una Collection (mi sembra una List generica) con all'interno tutte le PictureBox e le Label che aggiungi (si chiamano pictureboxes e labels se ricordo bene)

Il ciclo lo puoi fare all'interno di quelle collections, ad esempio con un For Each.

Luca

frenk17 Profilo | Junior Member

ti spiacerebbe postarmi il codice del ciclo che era quello che avevo pensato anche io ma non mi viene...

aiedail92 Profilo | Expert

Io avevo pensato a una cosa di questo genere:

Sub DisegnaForm(ByVal outGraph As Graphics) 'Crea una bitmap delle dimensioni della Form Dim bmp As New Bitmap(Me.ClientSize.Width, Me.ClientSize.Height) 'Ottiene il Graphics per disegnare sull'immagine Using g As Graphics = Graphics.FromImage(bmp) 'Disegna lo sfondo color Form g.Clear(Me.BackColor) 'Cicla fra le picturebox e le disegna For Each box As PictureBox In pictureBoxes box.DrawToBitmap(bmp, box.Bounds) Next 'Cicla fra le label e le disegna For Each lab As Label In labels lab.DrawToBitmap(bmp, lab.Bounds) Next 'Disegna l'immagine sul graphics outGraph.DrawImage(bmp, 0, 0) End Using End Sub

Luca
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5