Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Prima di realizzare il Gioco del 15 con lo scorrimento delle tessere, avevo immaginato il programma senza lo scorrimento.
Non lo avevo scritto, ma era abbastanza corto, ora l'ho scritto.
Codice minimale per il Gioco del 15, nulla da inserire sul form, anche la grafica è gestita dal codice.
Non ci ha fatto sapere, io ho pronto il 10x10.
Esatto 99 numeri, ho cercato in giro e non esiste!!!
Datemi conferma se sono l'unico imbranato che ha programmato il gioco del 15 con 99 numeri.
pictTasto(Tessere).Tag= Tessere +1' corrispondenza immagine con numero rappresentato
Me.PictureBox1.Controls.Add(pictTasto(Tessere))' aggiungo a PictureBox1 usato come contenitore per avere le coordinate invariate anche se si sposta il puzzle nel form
AddHandler pictTasto(Tessere).Click, AddressOf PictTasto_OnClick ' permette di avere l'evento click
SequenzaGenerata = SequenzaGenerata &(Tessere +100+1).ToString.Substring(1, 2)'sequenza delle 15 caselle il +100 per aggiungere lo zero = Format(tessere, "00"), in Vb.NET?
Next Tessere
ti basterà inserire quello.
così eviti anche di disegnare le immagini una per una ed appesantire il progetto.
ho fatto una semplice generazione
alla fine ecco il risultato
Invece di aggiungere una normalissima pictureBox
Aggiungi il componente Tessera
Sei sempre pronto a stimolare la mente.
Non ho eseguito il tuo consiglio di aggiungere il componente tessera perché finché posso mi piace fare da me.
Quando ho disegnato tutti i tasti in maniera ripetitiva, "sentivo" che qualcosa non andava, anche se mi giustificavo perché volevo un tasto personalizzato, e tu me ne hai dato conferma, disegnare tutti quei tasti era "sbagliato".
Ora ho disegnato solo lo sfondo del tasto con photoshop e l'ho caricato sul background delle pictureboxs poi ho creato delle bitmaps con il numero con effetto ombreggiato usando DrawStrig, e riaggiunto alle picturebox.image:
If Testo.Length= 1 Then Testo =" "& Testo 'centratura.
Using Carattere As Font =New Font("Arial", DimTessera \2, FontStyle.Regular)
' prima di scrivere il numero giallo chiaro, lo scrivo spostato nero per effetto ombra
g.DrawString(Testo, Carattere, Brushes.Black, New PointF(2, DimTessera / 8 + 2))
g.DrawString(Testo, Carattere, Brushes.LightYellow, New PointF(0, DimTessera / 8))
End Using
End Using
pictTasto(Tessere).Image= imgbmp
' next tessere
Il risultato è che i tasti hanno ancora l'aspetto personalizzato e allo zoom restano nitidi, ma l'exe è diventato di soli 64k, grazie per il consiglio.