Springen naar inhoud


- - - - -
Solved

Beweeg Control Als Contextmenustrip = Checked

Control ContextMenuStrip

  • Log in a.u.b. om te beantwoorden
Er zijn 27 reacties in dit onderwerp

#1 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 23 May 2012 - 09:16


Dus:

Waarschijnlijk kijk ik erover, of voel ik me oppeens verschrikkelijk dom maar bon! here goes:

Als je rechts klikt op een bestaand control (label) kan je deze opmaken, tekst veranderen etc etc etc.

Nu wil ik dat het mogelijk word deze control te verslepen en terug vast te zetten als "verslepen" is checked, unchecked.

Visual Basic Code:
	Const WM_NCLBUTTONDOWN As Integer = &HA1
	Const HTCAPTION As Integer = 2
	Private Sub VerplaatsToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles VerplaatsToolStripMenuItem.Click
		If VerplaatsToolStripMenuItem.Checked = True Then
			lblTitel.Capture = False
			Dim msg As Message = Message.Create(lblTitel.Handle, WM_NCLBUTTONDOWN, New IntPtr(HTCAPTION), IntPtr.Zero)
			Me.DefWndProc(msg)
		End If
	End Sub


Code komt in feite van Pascal(om dynamische tekstvakken te verslepen wanneer de muis erin komt.) (werkt 100% correct)
maar daar zit dan een addhandler tussen die ik in deze situatie toch niet kan plaatsen?

#2 pascalbianca

pascalbianca

    Webmaster/Admin

  • Webmaster
  • 3684 berichten
    Laatst bezocht vandaag, 17:13
  • LocatieSusteren, Nederland, Midden Limburg.
Inzender

Geplaatst op 23 May 2012 - 09:46

Ik kan niet geheel je verhaal volgen, mijn excuses.
Snap je die addhandler niet of wil je dat die control vast blijft staan na verslepen?

Wat is het gezegde in Ontwikkeling van software.: Er zijn vele wegen die naar Rome leiden, de kunst is de goede te vinden.
email : pascalbianca@vbib.be
of email : webmaster@vbib.be
MSN.:: pmhaschuffelers@hotmail.com
Volg ook mijn Raspberry Pi Blog.:: link


Geplaatste afbeelding


Huisregels - Tutorials - VS 2012 Express - Keybinding Posters - Code Tags gebruiken - LessThenDot - MSDN


*** If you like you're solution or appriciate the crew's effort, please click on the facebook like or the Google + button ***


#3 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 23 May 2012 - 10:03

Bijlage  k0k41d.jpg   7.93K   23 downloads

Als hij checked is, verslepen mogelijk maken.
als hij unchecked is, vast laten staan.

Sorry dat het een beetje onduidelijk was :)

alvast bedankt

#4 pascalbianca

pascalbianca

    Webmaster/Admin

  • Webmaster
  • 3684 berichten
    Laatst bezocht vandaag, 17:13
  • LocatieSusteren, Nederland, Midden Limburg.
Inzender

Geplaatst op 23 May 2012 - 15:00

Geeft niks, ik snap hem nu :)
Helaas zit ik nu op het werk dus kan even nu het programma niet voor me nemen , maar als ik vanavond om 23.30 hr. thuis ben zal ik even kijken voor je als ik nog fit genoeg ben ;)

Wat is het gezegde in Ontwikkeling van software.: Er zijn vele wegen die naar Rome leiden, de kunst is de goede te vinden.
email : pascalbianca@vbib.be
of email : webmaster@vbib.be
MSN.:: pmhaschuffelers@hotmail.com
Volg ook mijn Raspberry Pi Blog.:: link


Geplaatste afbeelding


Huisregels - Tutorials - VS 2012 Express - Keybinding Posters - Code Tags gebruiken - LessThenDot - MSDN


*** If you like you're solution or appriciate the crew's effort, please click on the facebook like or the Google + button ***


#5 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 23 May 2012 - 15:16

super!

#6 pascalbianca

pascalbianca

    Webmaster/Admin

  • Webmaster
  • 3684 berichten
    Laatst bezocht vandaag, 17:13
  • LocatieSusteren, Nederland, Midden Limburg.
Inzender

Geplaatst op 23 May 2012 - 23:50

Ik zie dat jij een eigen menu hebt aangemaakt.
Kun je misschien je project ingepakt hier als attachment erbij zetten , dan kan ik eens kijken.

Wat is het gezegde in Ontwikkeling van software.: Er zijn vele wegen die naar Rome leiden, de kunst is de goede te vinden.
email : pascalbianca@vbib.be
of email : webmaster@vbib.be
MSN.:: pmhaschuffelers@hotmail.com
Volg ook mijn Raspberry Pi Blog.:: link


Geplaatste afbeelding


Huisregels - Tutorials - VS 2012 Express - Keybinding Posters - Code Tags gebruiken - LessThenDot - MSDN


*** If you like you're solution or appriciate the crew's effort, please click on the facebook like or the Google + button ***


#7 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 24 May 2012 - 01:13

Voila Pascal, alvast bedankt!
Menu is een contextmenustrip

Bijlage  WindowsApplication21.rar   67.22K   1 downloads

#8 pascalbianca

pascalbianca

    Webmaster/Admin

  • Webmaster
  • 3684 berichten
    Laatst bezocht vandaag, 17:13
  • LocatieSusteren, Nederland, Midden Limburg.
Inzender

Geplaatst op 24 May 2012 - 01:26

Die titel kun je al niet verplaatsen, dus die verplaats code werkt al niet in jouw code of ik zie even iets over het hoofd.

Wat is het gezegde in Ontwikkeling van software.: Er zijn vele wegen die naar Rome leiden, de kunst is de goede te vinden.
email : pascalbianca@vbib.be
of email : webmaster@vbib.be
MSN.:: pmhaschuffelers@hotmail.com
Volg ook mijn Raspberry Pi Blog.:: link


Geplaatste afbeelding


Huisregels - Tutorials - VS 2012 Express - Keybinding Posters - Code Tags gebruiken - LessThenDot - MSDN


*** If you like you're solution or appriciate the crew's effort, please click on the facebook like or the Google + button ***


#9 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 24 May 2012 - 01:34

dat is het juist:P Ik wil de titel kunnen verplaatsen als de contextmenustrip "verplaatsen" checked is

#10 pascalbianca

pascalbianca

    Webmaster/Admin

  • Webmaster
  • 3684 berichten
    Laatst bezocht vandaag, 17:13
  • LocatieSusteren, Nederland, Midden Limburg.
Inzender

Geplaatst op 24 May 2012 - 01:37

Denk dat ik weet wat je wilt, dus doe het volgende eens.
Op het laatste van je code heb je dit staan.:
Visual Basic Code:
	Private Sub VerplaatsToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles VerplaatsToolStripMenuItem.Click
		If VerplaatsToolStripMenuItem.Checked = True Then
			lblTitel.Capture = True
			Dim msg As Message = Message.Create(lblTitel.Handle, WM_NCLBUTTONDOWN, New IntPtr(HTCAPTION), IntPtr.Zero)
			Me.DefWndProc(msg)
		End If
	End Sub

Vervang bovenstaande code gedeelte eens met dit.:
Visual Basic Code:
  Private Sub VerplaatsToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles VerplaatsToolStripMenuItem.Click
		If VerplaatsToolStripMenuItem.Checked = True Then
			lblTitel.Capture = True
		End If
	End Sub

	Private Sub lblTitel_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles lblTitel.MouseDown
		If VerplaatsToolStripMenuItem.Checked = True Then
			If e.Button = Windows.Forms.MouseButtons.Left Then
				lblTitel.Capture = False
				Dim msg As Message = Message.Create(lblTitel.Handle, WM_NCLBUTTONDOWN, New IntPtr(HTCAPTION), IntPtr.Zero)
				Me.DefWndProc(msg)
			End If
		End If
	End Sub

Dan vermoed ik dat dit het geen is wat je wilde bereiken ;)

Wat is het gezegde in Ontwikkeling van software.: Er zijn vele wegen die naar Rome leiden, de kunst is de goede te vinden.
email : pascalbianca@vbib.be
of email : webmaster@vbib.be
MSN.:: pmhaschuffelers@hotmail.com
Volg ook mijn Raspberry Pi Blog.:: link


Geplaatste afbeelding


Huisregels - Tutorials - VS 2012 Express - Keybinding Posters - Code Tags gebruiken - LessThenDot - MSDN


*** If you like you're solution or appriciate the crew's effort, please click on the facebook like or the Google + button ***


#11 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 24 May 2012 - 01:41

... Solved! :D
Tjesus... keek ik er dan zo over?! :P haha

thx

#12 pascalbianca

pascalbianca

    Webmaster/Admin

  • Webmaster
  • 3684 berichten
    Laatst bezocht vandaag, 17:13
  • LocatieSusteren, Nederland, Midden Limburg.
Inzender

Geplaatst op 24 May 2012 - 01:43

Graag gedaan en dat nog eens op dit tijdstip :P

Wat is het gezegde in Ontwikkeling van software.: Er zijn vele wegen die naar Rome leiden, de kunst is de goede te vinden.
email : pascalbianca@vbib.be
of email : webmaster@vbib.be
MSN.:: pmhaschuffelers@hotmail.com
Volg ook mijn Raspberry Pi Blog.:: link


Geplaatste afbeelding


Huisregels - Tutorials - VS 2012 Express - Keybinding Posters - Code Tags gebruiken - LessThenDot - MSDN


*** If you like you're solution or appriciate the crew's effort, please click on the facebook like or the Google + button ***


#13 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 24 May 2012 - 01:44

Je bent geweldig! :D
Ik ben echt totaal niet goed in dit soort code... damn

#14 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 24 May 2012 - 01:46

dus ff recapituleren dan maar;
Code:
		'Als contextmenustrip = checked dan...
		If VerplaatsToolStripMenuItem.Checked = True Then
			'Als linkermuisknop wordt ingedrukt dan...
			If e.Button = Windows.Forms.MouseButtons.Left Then
				'Capture = false?
				lblTitel.Capture = False
				'euhm?
				Dim msg As Message = Message.Create(lblTitel.Handle, WM_NCLBUTTONDOWN, New IntPtr(HTCAPTION), IntPtr.Zero)
				'en euhm
				Me.DefWndProc(msg)
			End If
		End If
	End Sub



#15 pascalbianca

pascalbianca

    Webmaster/Admin

  • Webmaster
  • 3684 berichten
    Laatst bezocht vandaag, 17:13
  • LocatieSusteren, Nederland, Midden Limburg.
Inzender

Geplaatst op 24 May 2012 - 01:46

Dan had je mij moeten zien in het begin en nu nog als ik niet uitkijk ;)

Wat is het gezegde in Ontwikkeling van software.: Er zijn vele wegen die naar Rome leiden, de kunst is de goede te vinden.
email : pascalbianca@vbib.be
of email : webmaster@vbib.be
MSN.:: pmhaschuffelers@hotmail.com
Volg ook mijn Raspberry Pi Blog.:: link


Geplaatste afbeelding


Huisregels - Tutorials - VS 2012 Express - Keybinding Posters - Code Tags gebruiken - LessThenDot - MSDN


*** If you like you're solution or appriciate the crew's effort, please click on the facebook like or the Google + button ***


#16 pascalbianca

pascalbianca

    Webmaster/Admin

  • Webmaster
  • 3684 berichten
    Laatst bezocht vandaag, 17:13
  • LocatieSusteren, Nederland, Midden Limburg.
Inzender

Geplaatst op 24 May 2012 - 01:48

Bericht bekijkendemodownload, op 24 May 2012 - 01:46, zei:

dus ff recapituleren dan maar;
Code:
		'Als contextmenustrip = checked dan...
		If VerplaatsToolStripMenuItem.Checked = True Then
			'Als linkermuisknop wordt ingedrukt dan...
			If e.Button = Windows.Forms.MouseButtons.Left Then
				'Capture = false?
				lblTitel.Capture = False
				'euhm?
				Dim msg As Message = Message.Create(lblTitel.Handle, WM_NCLBUTTONDOWN, New IntPtr(HTCAPTION), IntPtr.Zero)
				'en euhm
				Me.DefWndProc(msg)
			End If
		End If
	End Sub


Ik laat de code alleen reageren indien je hem aanvinkt, vink je hem weer uit doet hij niks meer.

Wat is het gezegde in Ontwikkeling van software.: Er zijn vele wegen die naar Rome leiden, de kunst is de goede te vinden.
email : pascalbianca@vbib.be
of email : webmaster@vbib.be
MSN.:: pmhaschuffelers@hotmail.com
Volg ook mijn Raspberry Pi Blog.:: link


Geplaatste afbeelding


Huisregels - Tutorials - VS 2012 Express - Keybinding Posters - Code Tags gebruiken - LessThenDot - MSDN


*** If you like you're solution or appriciate the crew's effort, please click on the facebook like or the Google + button ***


#17 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 24 May 2012 - 01:49

die link had ik nu wel door ja, maar die andere heb ik zelfs nog nooit van gehoord, het zien er me wel interessante functies uit

#18 pascalbianca

pascalbianca

    Webmaster/Admin

  • Webmaster
  • 3684 berichten
    Laatst bezocht vandaag, 17:13
  • LocatieSusteren, Nederland, Midden Limburg.
Inzender

Geplaatst op 24 May 2012 - 01:58

WM_NCLBUTTONDOWN > http://msdn.microsof...0(v=vs.85).aspx

Wat is het gezegde in Ontwikkeling van software.: Er zijn vele wegen die naar Rome leiden, de kunst is de goede te vinden.
email : pascalbianca@vbib.be
of email : webmaster@vbib.be
MSN.:: pmhaschuffelers@hotmail.com
Volg ook mijn Raspberry Pi Blog.:: link


Geplaatste afbeelding


Huisregels - Tutorials - VS 2012 Express - Keybinding Posters - Code Tags gebruiken - LessThenDot - MSDN


*** If you like you're solution or appriciate the crew's effort, please click on the facebook like or the Google + button ***


#19 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 24 May 2012 - 02:12

aha! snap em:D thx

#20 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 24 May 2012 - 02:20

Dit mag trouwens in de loop van de week hoor pascal,
Stel nu je hebt een Knop, je maakt een dynamisch label aan, je wilt daaraan een contextmenu hangen en die dan op dezelfde manier laten werken als de huidige control.
Can it be done?

#21 pascalbianca

pascalbianca

    Webmaster/Admin

  • Webmaster
  • 3684 berichten
    Laatst bezocht vandaag, 17:13
  • LocatieSusteren, Nederland, Midden Limburg.
Inzender

Geplaatst op 24 May 2012 - 02:24

natuurlijk maar uiteraard zou ik zeggen probeer het eens eerst zelf, de meeste codes heb je al ervoor ;)

Wat is het gezegde in Ontwikkeling van software.: Er zijn vele wegen die naar Rome leiden, de kunst is de goede te vinden.
email : pascalbianca@vbib.be
of email : webmaster@vbib.be
MSN.:: pmhaschuffelers@hotmail.com
Volg ook mijn Raspberry Pi Blog.:: link


Geplaatste afbeelding


Huisregels - Tutorials - VS 2012 Express - Keybinding Posters - Code Tags gebruiken - LessThenDot - MSDN


*** If you like you're solution or appriciate the crew's effort, please click on the facebook like or the Google + button ***


#22 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 24 May 2012 - 02:34

Toevoegen lukt, bewerken lukt
maar het verslepen... Ho maar!

Bijlage  WindowsApplication21.rar   67.1K   1 downloads

#23 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 24 May 2012 - 02:45

Code:
Public Class Form1
	Private label As System.Windows.Forms.Label
	Const WM_NCLBUTTONDOWN As Integer = &HA1
	Const HTCAPTION As Integer = 2
	Private Sub BewerkenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BewerkenToolStripMenuItem.Click
		label.Text = InputBox("Geef je titel in:", "Titel - TimeLine", "Titel")
	End Sub
	Private Sub VerplaatsToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles VerplaatsToolStripMenuItem.Click
		If VerplaatsToolStripMenuItem.Checked = True Then
			label.Capture = True
		End If
	End Sub
	Private Sub label_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles label.MouseDown
		If VerplaatsToolStripMenuItem.Checked = True Then
			If e.Button = Windows.Forms.MouseButtons.Left Then
				label.Capture = False
				Dim msg As Message = Message.Create(label.Handle, WM_NCLBUTTONDOWN, New IntPtr(HTCAPTION), IntPtr.Zero)
				Me.DefWndProc(msg)
			End If
		End If
	End Sub
	Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
		Dim intcount As Integer
		intcount += 1
		label = New System.Windows.Forms.Label
		AddHandler label.MouseDown, AddressOf label_MouseDown
		With label
			.Location = New Point(15, 30)
			.Text = "Test"
			.Width = 30
			.Height = 30
			.AutoSize = True
			.Name = "lbldynamic_" & intcount & "_mycntrl"
			.Enabled = True
			.TabStop = False
			.ContextMenuStrip = ContextMenuStrip1
		End With
		Me.Controls.Add(label)
	End Sub
End Class


het zit hem in de "Label.MouseDown"
Code:
	Private Sub label_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles label.MouseDown
		If VerplaatsToolStripMenuItem.Checked = True Then
			If e.Button = Windows.Forms.MouseButtons.Left Then
				label.Capture = False
				Dim msg As Message = Message.Create(label.Handle, WM_NCLBUTTONDOWN, New IntPtr(HTCAPTION), IntPtr.Zero)
				Me.DefWndProc(msg)
			End If



#24 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 24 May 2012 - 02:54

nvmd solved :D

#25 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 24 May 2012 - 03:04

Ja nee toch ni... blijft gewoon de laatste label verplaatsen... bugger

#26 pascalbianca

pascalbianca

    Webmaster/Admin

  • Webmaster
  • 3684 berichten
    Laatst bezocht vandaag, 17:13
  • LocatieSusteren, Nederland, Midden Limburg.
Inzender

Geplaatst op 24 May 2012 - 07:32

Ja dat klopt ook.
Je zult in die situatie nu moeten gaan kijken dat je die intcount gaat opvangen om dan die betreffende label te kunnen verplaatsen.

Wat is het gezegde in Ontwikkeling van software.: Er zijn vele wegen die naar Rome leiden, de kunst is de goede te vinden.
email : pascalbianca@vbib.be
of email : webmaster@vbib.be
MSN.:: pmhaschuffelers@hotmail.com
Volg ook mijn Raspberry Pi Blog.:: link


Geplaatste afbeelding


Huisregels - Tutorials - VS 2012 Express - Keybinding Posters - Code Tags gebruiken - LessThenDot - MSDN


*** If you like you're solution or appriciate the crew's effort, please click on the facebook like or the Google + button ***


#27 demodownload

demodownload

    Junior Developer

  • Leden
  • PipPip
  • 98 berichten
    Laatst bezocht 08 Jun 2012 00:21

Geplaatst op 24 May 2012 - 07:39

Kan er toch moeilijk een for... next in zetten met een IF int count = .. then?
Kzit ff verkeerd denk ek :P

#28 pascalbianca

pascalbianca

    Webmaster/Admin

  • Webmaster
  • 3684 berichten
    Laatst bezocht vandaag, 17:13
  • LocatieSusteren, Nederland, Midden Limburg.
Inzender

Geplaatst op 24 May 2012 - 10:59

Nee maar ik vermoed dat je dan ook die toolstrip ook met die integer moet gaan verhogen, aangezien je steeds dezelfde toolstrip gaat gebruiken.
Dus als ik de eerste bv. ga verplaatsen en die is aangevinkt en ik ga dan naar de 2de dan is die dar ook al aangevinkt aangezien hij dit onthoud van de eerste.
Het is mogelijk alleen denk ik dan dat je behoorlijk moet gaan splitten.

Wat is het gezegde in Ontwikkeling van software.: Er zijn vele wegen die naar Rome leiden, de kunst is de goede te vinden.
email : pascalbianca@vbib.be
of email : webmaster@vbib.be
MSN.:: pmhaschuffelers@hotmail.com
Volg ook mijn Raspberry Pi Blog.:: link


Geplaatste afbeelding


Huisregels - Tutorials - VS 2012 Express - Keybinding Posters - Code Tags gebruiken - LessThenDot - MSDN


*** If you like you're solution or appriciate the crew's effort, please click on the facebook like or the Google + button ***






Ook met taq Solved, Control, ContextMenuStrip voorzien

0 gebruiker(s) lezen dit onderwerp

0 lid(leden), 0 bezoeker(s), 0 anonieme gebruikers

Inloggen


[Solved] Untitled 1

Hosting provided by Combell
Met dank aan Jürgen voor de jarenlange inzet van visualbasic.be (anno dec 2000)
Met dank aan Mike en Ronneke voor de jarenlange inzet van vbib.be (anno dec 2010)
vbib.be - vbnet.be - vbdotnet.be - visualbasic.be