Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - svuotare una picture
Forum - Visual Basic 6 - svuotare una picture

Avatar
maurizio74 (Normal User)
Pro


Messaggi: 116
Iscritto: 30/03/2009

Segnala al moderatore
Postato alle 13:13
Giovedì, 14/03/2024
Ciao a tutti,

piccolo problema....

in un form ho una picture1, un command1, che lanciandolo mi scrive i numeri da 1 a 5, e command2 che si chiama canc che lanciandolo dovrebbe pulire completamente la picure1
vorrei capire perchè quado ripremo il command1 dopo il canc i numeri da 1 a 5 me li scrive sotto dopo una parte vuota????

Codice sorgente - presumibilmente VB.NET

  1. Private Sub Command1_click()
  2. Dim i As Long
  3. Dim arr(1 To 5) As Variant
  4. For i = 1 To 5
  5.     arr(i) = i
  6.    
  7.     Picture1.Print i
  8.    
  9. Next
  10.  
  11. End Sub



Private Sub coommand2_Click()
Set Picture1.Picture = Nothing
End Sub

io vorrei che premendo command1 si vedesse sempre come l'immagine 1....

A voi... Grazie


maurizio74 ha allegato un file: Immagine.png (16847 bytes)
Clicca qui per guardare l'immagine

Ultima modifica effettuata da Thejuster il 14/03/2024 alle 14:52
PM Quote
Avatar
Thejuster (Admin)
Guru^2


Messaggi: 2308
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 14:51
Giovedì, 14/03/2024
Non conosco vb6 e non mi azzardo a dire cavolate.
Anche perché non sò esattamente

Codice sorgente - presumibilmente Plain Text

  1. Picture1.Print i



cosa faccia, se è chiama un metodo o qualcosa.

Ma da quel che vedo dalla tua immagine, quando stampa i numeri, l'asse Y non viene azzerato.
Dovresti controllare  proprio nel ciclo di stampa ed azzerare l'asse Y ad ogni inizio ciclo.
Come puoi notare dalla seconda screen, 1 inizia alla riga successiva dove terminava nella screen.

Ultima modifica effettuata da Thejuster il 14/03/2024 alle 14:53


https://mire.forumfree.it/ - Mire Engine
C# UI Designer
PM Quote
Avatar
Carlo (Member)
Guru


Messaggi: 1350
Iscritto: 29/01/2018

Segnala al moderatore
Postato alle 19:52
Giovedì, 14/03/2024
Testo quotato

Postato originariamente da maurizio74:

Picture1.Print i




Stai usando il metodo .Print, per ripristinare lo stato iniziale:

Picture1.Cls

Thejuster è andato oltre, se vuoi scrivere partendo da coordinate specifiche lo puoi fare con .Pset o .Scale

Ultima modifica effettuata da Carlo il 14/03/2024 alle 20:02


in programmazione tutto è permesso
PM Quote
Avatar
maurizio74 (Normal User)
Pro


Messaggi: 116
Iscritto: 30/03/2009

Segnala al moderatore
Postato alle 20:03
Giovedì, 14/03/2024
Ciao Carlo,

sempre tu... grande ...

li avevo privati tutti...

Set Picture1.Picture = LoadPicture(””)
Set Picture1.Picture = Nothing
Picture1.Refresh
ecc. ecc.

grazieeee:k::k::k::k:

PM Quote
Avatar
Carlo (Member)
Guru


Messaggi: 1350
Iscritto: 29/01/2018

Segnala al moderatore
Postato alle 21:27
Giovedì, 14/03/2024
Picture1 = Nothing, effettivamente cancella il layer grafico della Picturebox però non riporta le coordinate a 0,0 come aveva notato Thejuster.

Vedo che ti stai appassionando alla programmazione, sono contento ma mi dispiace che lo stai facendo con un ambiente obsoleto non più aggiornato e praticamente inutilizzabile in Win11 e altre piattaforme.

Visto che sei agli inizi, installare VisualStudio Community, gratis e fare gli eperimenti con VB.Net, sarebbe auspicabile, passare a C# facile e con i nuovi framework usare lo stesso codice anche per Android.

Potresti evitare di andare a tentoni usando qualche manuale come: https://www.itcdantealighieri.edu.it/home25/phocadownload/m ...

oppre la guida presente qui: http://www.pierotofy.it/pages/guide/Guida_al_Visual_Basic_ ...

Non ti posto quelle in VB6, perché scrivere codice nuovo con VB6 è concettualmente sbagliato.

Ultima modifica effettuata da Carlo il 14/03/2024 alle 21:37


in programmazione tutto è permesso
PM Quote