Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Hanoi in c#
giovedì 21 luglio 2005 - 14.52
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
kunio
Profilo
| Junior Member
50
messaggi | Data Invio:
gio 21 lug 2005 - 14:52
Ciao a tutti,
devo realizzare un progetto che implementi il gioco della torre di Hanoi.
Ho problemi sull'interfaccia grafica.Devo riuscire a trascinare un'immagine da una Picture Box ad un'altra picture box.E' da un bel po che ci sbatto la testa ma non ne vengo a capo.
Per cortesia aiutatemi.
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
gio 21 lug 2005 - 16:13
Ciao Kunio,
mi sa che dovrai sbattere la testa ancora un po'. Le strade sono due. O sfruttare il Drag&Drop nativo offerto da .NET oppure devi implementarlo tu da zero usando GDI+ e forse altro.
Nel primo caso magari ti è utile creare un custom control ad hoc che rappresenti i vari anelli della Torre in modo che così puoi dopo trascinarlo senza scrivere ulteriori implementazioni del Drag&DRop.
ciao
David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
kunio
Profilo
| Junior Member
50
messaggi | Data Invio:
gio 21 lug 2005 - 16:18
Grazie fess (che dalle mie parti vuol dire tanto),...continuerò a sbattermi,...spero cmq che se a quelcuno gli venga un idea su come poter risolvere il problema mi dia una mano.
Ciao ciao,...Microsoft mvp
kunio
Profilo
| Junior Member
50
messaggi | Data Invio:
ven 22 lug 2005 - 11:35
Su un altro forum mi han suggerito la seguente soluzione.
il controllo PictureBox non ha la proprietà "AllowDrop", la quale impostata su "True" permette la gestione del "DragDrop", per sopperire a tale "mancanza" puoi incapsulare il controllo PictureBox all'interno di un controllo Panel (ed impostando la proprietà Dock del PictureBox su Fill in modo che il Panel venga "riempito" in automatico anche durante il resize). Per il codice d'esempio riportato è necessario inserire in una Windows Form due controlli PictureBox, rispettivamente PictureBox1 e PictureBox2, il secondo inserito all'interno di un controllo Panel (Panel1) come detto in precedenza. Lo scopo dell'esempio "trascinare" l'immagine dal controllo PictureBox1 al controllo PictureBox2 (naturalmente per il contrario è possibile eseguire la procedura a specchio), bando alle chiacchere ecco il codice:
private void Form1_Load(object sender, System.EventArgs e)
{
this.panel1.AllowDrop = true;
this.pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage ;
this.pictureBox2.SizeMode = PictureBoxSizeMode.StretchImage ;
}
private void pictureBox1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
{
if(e.Button == MouseButtons.Left )
{
this.pictureBox1.DoDragDrop (this.pictureBox1.Image ,DragDropEffects.Copy );
}
}
private void panel1_DragOver(object sender, System.Windows.Forms.DragEventArgs e)
{
if(e.Data.GetDataPresent (System.Windows.Forms.DataFormats.Bitmap ))
{
e.Effect = System.Windows.Forms.DragDropEffects.Copy ;
}
}
private void panel1_DragDrop(object sender, System.Windows.Forms.DragEventArgs e)
{
if(e.Data.GetDataPresent (System.Windows.Forms.DataFormats.Bitmap ))
{
this.pictureBox2.Image = this.pictureBox1.Image ;
this.pictureBox1.Image = null;
}
}
Questo esempio su come trasferire le immagini da due PictureBox non mi funziona... trovate qualche errore in ciò che mi hanno suggerito?
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
ven 22 lug 2005 - 14:02
Eh eh,
a questo punto dovresti chiedere a chi ti ha dato questo suggerimento :) Chiaramente l'AllowDrop consente di attivare il Drag&Drop nativo di .NET che era una delle due soluzioni che ti avevo indicato anche io.
Invece di farti dare una soluzione bella e pronta vai sull' SDK di .NET e leggiti questo capitolo "Drag-and-Drop Operations and Clipboard Support" dove trovera iimportanti informazioni.
Cmq. anche dalle mie parti si dice Fess, tu di dove sei ?
ciao
David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
kunio
Profilo
| Junior Member
50
messaggi | Data Invio:
ven 22 lug 2005 - 14:27
Niente,...tutto apposto...ci son riuscito da solo.
Grazie lo stesso per l'interessamento e per i suggerimenti.
PS.Son della provincia di bergamo.
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
gio 28 lug 2005 - 11:22
Ah ecco, io Brescia, confino a 2 km. con Bergamo.
ciao
David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
Torna su
Stanze Forum
Elenco Threads
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 !