[vb.net]wndproc da controllo

martedì 08 gennaio 2008 - 18.01

phomea Profilo | Newbie

salve

io vorrei poter spostare trascinando un suo controllo....mi spiego...

ad esempio io ho un panel...
vorrei che quando clicco sul panel e trascino venisse interpretato come se avessi cliccato e trascinato sulla barra del titolo del form...

devo fare l'override della wndproc giusto??
ma come faccio a mandare il messaggio al form?

io avevo pensato di fare un contollo personalizzato con

Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
MyBase.WndProc(m)

Const WM_NCHITTEST As Integer = &H84
Const HTCAPTION As Integer = 2
Const HTCLIENT As Integer = 1
If m.Msg = WM_NCHITTEST AndAlso m.Result.ToInt32() = HTCLIENT Then
dim nuovo_m as message
nuovo_m=m
nuovo_m.Result = New IntPtr(HTCAPTION)
nuovo_m.HWnd=form1.Handle

End If

End Sub

e poi questo nuovo_m mandarlo al form....però non so come fare

grazie
di professione capro espiatorio

nico839 Profilo | Senior Member

ciao,scusa sarà l'orario o il lavoro, ma non ho capito bene:
vorresti spostare un form cliccando e trascinando su un suo controllo e non sulla barra superiore?

se dai un'occhiata qui http://www.settorezero.com/wordpress/diamo-forma-personalizzata-e-colori-trasparenti-alle-nostre-finestre-con-vbnet-gli-shaped-form/

fa qualcosa del genere agendo sugli eventi mouse...
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 !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5