Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di Cr4ckz!
    Registrato dal
    Aug 2003
    Messaggi
    163

    [VB.NET] Disegnare dentro PixtureBox

    Ciao a tutti, mi sto approcciando per la prima volta a Visual Basic .NET e ho subito una domanda che a voi potrà sembrare banale...
    Devo realizzare un programma che disegni un grafico all'interno di una pictureBox ma nn so proprio come fare...o meglio...sono riuscito a disegnare dentro la form...ma assolutamente no all'interno della PictureBox
    Potreste consigliarmi come?
    Ricordate che sono alle primissime armi con VB.net quindi un esempio (anche di come disegnare una sola linea) è ben accetto

    Ah, per disegnare gli assi con i valori cosa mi conviene fare? Usare delle label per i valori e e.Graphics.DrawLine per gli assi o cosa?

    Grazie in anticipo per i consigli ^^

  2. #2
    Utente di HTML.it L'avatar di Cr4ckz!
    Registrato dal
    Aug 2003
    Messaggi
    163
    nessun suggerimento?
    plz datemi solo un input ^^

  3. #3

    Re: [VB.NET] Disegnare dentro PixtureBox

    Se citi e.Graphics.DrawLine significa che già sai come disegnare in una PictureBox . Intercetta il suo evento Paint e da lì usa i metodi di e.Graphics.
    Amaro C++, il gusto pieno dell'undefined behavior.

  4. #4
    Utente di HTML.it L'avatar di Cr4ckz!
    Registrato dal
    Aug 2003
    Messaggi
    163

    Re: Re: [VB.NET] Disegnare dentro PixtureBox

    Originariamente inviato da MItaly
    Se citi e.Graphics.DrawLine significa che già sai come disegnare in una PictureBox . Intercetta il suo evento Paint e da lì usa i metodi di e.Graphics.
    prima di tutto grazie per la risposta ^^

    non è che potresti spiegarmelo meglio plz?
    Vengo da Java e mi trovo un po spiazzato con VB.NET

  5. #5
    Cos'è che non capisci di preciso?
    Come con questo
    codice:
        Private Sub Form1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles MyBase.Paint
            Dim gr As Graphics = e.Graphics
            gr.FillEllipse(New SolidBrush(Color.LightGray), 0, 0, Me.Width, Me.Height)
            gr.DrawEllipse(New Pen(Color.Black), 0, 0, Me.Width, Me.Height)
            gr.Dispose()
        End Sub
    disegni sul form, con un codice analogo
    codice:
        Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
            Dim gr As Graphics = e.Graphics
            gr.FillEllipse(New SolidBrush(Color.LightGray), 0, 0, sender.Width, sender.Height)
            gr.DrawEllipse(New Pen(Color.Black), 0, 0, sender.Width, sender.Height)
            gr.Dispose()
        End Sub
    disegni su una PictureBox.
    Amaro C++, il gusto pieno dell'undefined behavior.

  6. #6
    Utente di HTML.it L'avatar di Cr4ckz!
    Registrato dal
    Aug 2003
    Messaggi
    163
    Grazie mille per la risposta...e in effetti inizio a capirne qualcosina in più...
    ora riesco si a disegnare dentro una pictureBox ma ho dovuto l'evare il gr.Dispose() perchè altrimenti, in fase di debug, mi dava un'eccezione (quando arrivo a casa posso essere più preciso perche ora nn ricordo ^^) appena caricava la form e le Box al suo interno..

    un'altro problemino che non capisco riguarda il tracciare due righe che si "incontrano"...

    Se scrivo così, non ci sono problemi:
    codice:
    Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
            Dim gr As Graphics = e.Graphics
            gr.DrawLine(New Pen(Color.Black), 0, 0, sender.Width, 0)
            gr.DrawLine(New Pen(Color.Black), 0, 20, 65, 112)
    End Sub
    Ma se scrivo così, la seconda linea non me la traccia proprio :master:
    codice:
    Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
            Dim gr As Graphics = e.Graphics
            gr.DrawLine(New Pen(Color.Black), 0, 0, sender.Width, 0)
            gr.DrawLine(New Pen(Color.Black), 0, sender.Height, sender.Width, sender.Height)
    End Sub
    invece per il problema dei valori da mettere sugli assi? Solo con le label?

    thx

  7. #7
    Forse è meglio che tu mi spieghi cosa vuoi fare con quel codice...
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.