
Mikelius (Member)
Expert
    
Messaggi: 525
Iscritto: 14/04/2017
|
Se volete parallelamente sviluppare LA versione con classi, Organizziamoci qui.
Ecco un inizio di classe per gestire una griglia di PictureBox .
|
|

Carlo (Member)
Guru
    
Messaggi: 1231
Iscritto: 29/01/2018
|
Scaricata, adesso viene il bello
in programmazione tutto è permesso |
|

Carlo (Member)
Guru
    
Messaggi: 1231
Iscritto: 29/01/2018
|
Vista e ora?
in programmazione tutto è permesso |
|

Mikelius (Member)
Expert
    
Messaggi: 525
Iscritto: 14/04/2017
|
Commenti?
Cioè, ti sembra che manchi qualcosa?
|
|

Ultimo (Member)
Guru
    
Messaggi: 877
Iscritto: 22/05/2010
|
Postato originariamente da Mikelius:
Commenti?
Cioè, ti sembra che manchi qualcosa? |
ho visto che hai usato 3 form per forza4 e 2048
ma leggendo le proprietà risultano 3 Form1
perché usi i form anzichè direttamente delle Classi ?
If ok Then GOTO Avanza else GOTO Inizia
|
|

Mikelius (Member)
Expert
    
Messaggi: 525
Iscritto: 14/04/2017
|
Perchè è da poco che affronto il c# . Nel caso specifico delle PictureBox, si potrebbero fare anche delle classi, ma resterebbe cmq nell'ambito ristretto di WindowsForm , perchè per WPF, Xamarin ecc l'interfaccia (con la gestione dei controlli) si deve ugualmente rifare.
Intanto presento il lavoro, se è nella direzione giusta. Inizialmente volevo fare una classe di tipo Object ed al limite ereditarla per le PictureBox (per usare la proprietà image). O creare un nuovo controllo.
Poi ho cambiato per creare la classe più facilmente ed in secondo tempo generalizzarla.
Io sto acquisendo ora le conoscenze e preferisco andare a Step. Stessa cosa per il motore di gioco.
Lo si potrebbe fare che lavora con le PictureBox per poi generalizzarlo.
Pensi che sia doppio lavoro inutile? Tieni presente che anche io muovo i primi passi .. non sono un GURU in c# XD
|
|

Ultimo (Member)
Guru
    
Messaggi: 877
Iscritto: 22/05/2010
|
Postato originariamente da Mikelius:
Perchè è da poco che affronto il c# . Nel caso specifico delle PictureBox, si potrebbero fare anche delle classi, ma resterebbe cmq nell'ambito ristretto di WindowsForm , perchè per WPF, Xamarin ecc l'interfaccia (con la gestione dei controlli) si deve ugualmente rifare.
Intanto presento il lavoro, se è nella direzione giusta. Inizialmente volevo fare una classe di tipo Object ed al limite ereditarla per le PictureBox (per usare la proprietàimage). O creare un nuovo controllo.
Poi ho cambiato per creare la classe più facilmente ed in secondo tempo generalizzarla.
Io sto acquisendo ora le conoscenze e preferisco andare a Step. Stessa cosa per il motore di gioco.
Lo si potrebbe fare che lavora con le PictureBox per poi generalizzarlo.
Pensi che sia doppio lavoro inutile? Tieni presente che anche io muovo i primi passi .. non sono un GURU in c# XD |
Allora, se stai imparando, dovresti prima realizzare il gioco in C#
usando i Windows Form, primo step, poi passi al WPF secondo step,
oppure inizi subito col WPF, ma devi imparare il linguaggio Xaml
per disegnare le interfacce.
Se devi creare una Classe che non richiede l'interfaccia grafica
non usare i Form ma direttamente una Classe .cs
quello che ti serve è creare le classi base del motore del gioco
che si potranno riutilizzare, sia con i Forms che con WPF
quello che cambia è il disegno delle interfacce,
poi si possono usare anche con Xamarin.
Ultima modifica effettuata da Ultimo il 04/07/2018 alle 10:15
If ok Then GOTO Avanza else GOTO Inizia
|
|

Carlo (Member)
Guru
    
Messaggi: 1231
Iscritto: 29/01/2018
|
Ho aggiunto l'handler click e il .Tag su _2048.cs:
private void InitializePictureBox(PictureBox PictureBox1, Point P, Size S, int I)
{
PictureBox1.Location = P;
PictureBox1.Size = S;
PictureBox1.Tag = I;
PictureBox1.BackColor = Color.Red;
PictureBox1.TabStop = false;
PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
PictureBox1.BorderStyle = BorderStyle.Fixed3D;
this.panel1.Controls.Add(PictureBox1);
PictureBox1.Click += new System.EventHandler(this.PictureBox1_OnClick);
}
volevo identificare la PictureBox cliccata, su Form1.cs ho aggiunto l'evento OnClick:
public void PictureBox1_OnClick(object sender, EventArgs e)
{
label3.Text = "click su picturebox";
}
credevo di trovare dentro a sender.Tag, l'indice immesso
e su e.X, e.Y, le coordinate della PictureBox cliccata, ma così non è ...
Ultima modifica effettuata da Carlo il 04/07/2018 alle 1:34
in programmazione tutto è permesso |
|

Carlo (Member)
Guru
    
Messaggi: 1231
Iscritto: 29/01/2018
|
Forse ho scritto la mia prima classe e ho deciso quali parametri scambiare.
@Mikelius, Ultimo.
Non sarei riuscito, senza lo scambio di opinioni.
La vedo molto in salita.
Il programma crea un form da codice con due label e un pannello dimensionato a piacere.
la classe riempie di picturebox il pannello, creando una griglia.
l'evento click recupera tutti i parametri delle picturebox e li mostra sulle labels
Prego correggere gli inevitabili inestetismi...
in programmazione tutto è permesso |
|