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
Zoom con rotellina
martedì 16 dicembre 2008 - 23.06
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
alexmed
Profilo
| Guru
1.186
messaggi | Data Invio:
mar 16 dic 2008 - 23:06
Ciao a tutti
Qualcuno saprebbe dirmi come si fanno ad ingrandire e/o ridurre le dimensioni di un'immagine (inserita in una picturebox) per mezzo della rotellina del mouse.
Inoltre la PictureBox si trova all'interno di un Panel.
Grazie
luigidibiasi
Profilo
| Guru
1.077
messaggi | Data Invio:
mar 16 dic 2008 - 23:22
Ciao,
puoi dare un'occhiata qui :
http://msdn.microsoft.com/it-it/library/system.windows.forms.control.mousewheel.aspx
Luigi Di Biasi
http://blogs.dotnethell.it/luigidibiasi/
alexmed
Profilo
| Guru
1.186
messaggi | Data Invio:
mar 16 dic 2008 - 23:28
Ciao
Purtroppo sono due giorni che ci giro attorno a MouseWheel e ad e.Delta ma non ne vengo a capo.
luigidibiasi
Profilo
| Guru
1.077
messaggi | Data Invio:
mar 16 dic 2008 - 23:29
Che problema ti hai? ridimensionare o non ti attiva l'evento?
Luigi Di Biasi
http://blogs.dotnethell.it/luigidibiasi/
alexmed
Profilo
| Guru
1.186
messaggi | Data Invio:
mar 16 dic 2008 - 23:35
A saperlo!!!
Inserendo questo
Private Sub Panel1_MouseWheel(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Panel1.MouseWheel
Dim numberOfTextLinesToMove As Integer = e.Delta * SystemInformation.MouseWheelScrollLines / 120 ' WHEEL_DATA
Me.ToolStripStatusLabel1.Text = numberOfTextLinesToMove
End Sub
Come spiegato dalla guida, non succede nulla (e sono sicuro che c'è un motivo
. Ma quale??)
alexmed
Profilo
| Guru
1.186
messaggi | Data Invio:
mar 16 dic 2008 - 23:40
Aggiungo solo questa osservazione
Se la stessa cosa la scrivo all'interno di una Combo vedo il valore nella ToolStripStatusLabel1
Private Sub ComboBox1_MouseWheel(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles ComboBox1.MouseWheel
Dim numberOfTextLinesToMove As Integer = e.Delta * SystemInformation.MouseWheelScrollLines / 120 ' WHEEL_DATA
Me.ToolStripStatusLabel1.Text = numberOfTextLinesToMove
End Sub
luigidibiasi
Profilo
| Guru
1.077
messaggi | Data Invio:
mar 16 dic 2008 - 23:41
Nell'altro post ti hanno scritto un link ad un esempio di codice magari lì risolvi...
Luigi Di Biasi
http://blogs.dotnethell.it/luigidibiasi/
alexmed
Profilo
| Guru
1.186
messaggi | Data Invio:
mar 16 dic 2008 - 23:46
Purtroppo non è in VB (precisazione che non ho fatto)
luigidibiasi
Profilo
| Guru
1.077
messaggi | Data Invio:
mar 16 dic 2008 - 23:56
Non avendo VB sottomano mi butto
hai provato a gestire il mousewheel della picturebox togliendola dal panel? giusto per avere un idea di come muoverci
correggo il post....
ho provato a inserire la picturebox nel panel e non gestisce il mousewheel mentre togliendo il panel lo gestisce.... cercando qua e là ho trovato questi link:
http://randompunter.com/post/2007/12/Making-a-scrollable-panel-scroll-with-the-mouse-wheel-just-by-hovering-over-it.htm
http://blogs.ugidotnet.org/franx_blog/archive/2008/09/14/94032.aspx
Luigi Di Biasi
http://blogs.dotnethell.it/luigidibiasi/
alexmed
Profilo
| Guru
1.186
messaggi | Data Invio:
mer 17 dic 2008 - 00:08
intendi una cosa del genere?
Private Sub PictureBox1_MouseWheel(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseWheel
Dim numberOfTextLinesToMove As Integer = e.Delta * SystemInformation.MouseWheelScrollLines / 120 ' WHEEL_DATA
Me.ToolStripStatusLabel1.Text = numberOfTextLinesToMove
End Sub
Non succede nulla.
Da quello che ho capito però il MouseWheel dovrebbero gestirlo solo i controlli che hanno l'AutoScroll. Oppure no?
luigidibiasi
Profilo
| Guru
1.077
messaggi | Data Invio:
mer 17 dic 2008 - 00:15
Su msdn si parla di controlli che hanno lo stato attivo quindi controlli che possono avere il focus.. non vorrei che la picturebox non possa averlo
cercando in giro comunque ho notato che mousewheel crea molti problemi
mha è tardi ... nel caso resti qui buona notte
Luigi Di Biasi
http://blogs.dotnethell.it/luigidibiasi/
alexmed
Profilo
| Guru
1.186
messaggi | Data Invio:
mer 17 dic 2008 - 00:17
Grazie
Rimando anch'io a domani
Ciao
alexmed
Profilo
| Guru
1.186
messaggi | Data Invio:
mer 17 dic 2008 - 00:51
Ciao
il lume si accese!!!!
Dim numberOfTextLinesToMove As Integer = e.Delta * SystemInformation.MouseWheelScrollLines / 120 ' WHEEL_DATA
Me.ToolStripStatusLabel1.Text = numberOfTextLinesToMove
If numberOfTextLinesToMove <= 0 Then
Me.PictureBox1.Width /= Math.Abs(numberOfTextLinesToMove)
Me.PictureBox1.Height /= Math.Abs(numberOfTextLinesToMove)
Me.TextBox1.Text = numberOfTextLinesToMove
Else
Me.PictureBox1.Width *= Math.Abs(numberOfTextLinesToMove)
Me.PictureBox1.Height *= Math.Abs(numberOfTextLinesToMove)
End If
Basta mettere all'interno del Panel anche un controllo che accetta il Focus (una TextBox) ed il gioco è fatto!!!!
Se poi alla TextBox gli dai Width = 0 la metti in ReadOnly e come Location = 0,0 nessuno si accorge che c'è!!!
Ciao e grazie
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 !