HEJ! Du kan kanske använda en mousedown istället? Typ: Njaa.. Jag tror som Peter att det är MouseDown du skall använda. Vad är det för trevliga grejer som TreeViewEventArgs ger dig som du inte kan få i MouseDown? Om du vill veta vilken nod som högerklickades på kan du använda följande... (klippt från C# så den kan innehålla fel) Tackar så mycket! Tur att en amatör kan få lite hjälp... <code> Blev ändå inte helt bra Se upp för C# kod Provade denna innan förra inlägget men det gick ej... ja, det är väl mest en smakfråga....Känna musknapp i TreeView_1_AfterSelect?
Någon som vet hur man skall känna att det är höger musknapp?
/Alexander
<code>
Private Sub TreeView_AGV_AfterSelect(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeView_AGV.AfterSelect
'Dim m As System.Windows.Forms.MouseEventArgs
'If m.Button = MouseButtons.Right Then
'MsgBox("H")
'End If
'e.Action.ByMouse
End Sub
</code>Sv: Känna musknapp i TreeView_1_AfterSelect?
<code>
Private Sub Button1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TreeView1.MouseDown
If e.Button = MouseButtons.Right Then
MsgBox("hej")
End If
End Sub
</code>Sv: Känna musknapp i TreeView_1_AfterSelect?
Då kan jag inte använda de fina funktionerna som "ByVal e As System.Windows.Forms.TreeViewEventArgs" ger mig!
Eller kan man få dessa på något sätt ändå???Sv: Känna musknapp i TreeView_1_AfterSelect?
<code>
Private Sub Button1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TreeView1.MouseDown
If e.Button = MouseButtons.Right Then
Dim clicked as TreeNode=treeview1.GetNodeAt(e.X,e.Y)
End If
End Sub
</code>Sv: Känna musknapp i TreeView_1_AfterSelect?
Det blev rätt. Nu får jag innehållet på översta noden.
Undrar nu bara hur man gör så att denna som man klickade på blir 'Markerad'?
<code>
Private Sub TreeView_ZON_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TreeView_ZON.MouseDown
Dim clicked As TreeNode = TreeView_ZON.GetNodeAt(e.X, e.Y)
If e.Button = MouseButtons.Right Then
MsgBox(clicked.TreeView.Nodes(0).Text)
End If
End Sub
</code>Sv: Känna musknapp i TreeView_1_AfterSelect?
Private Sub TreeView_ZON_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TreeView_ZON.MouseDown
Dim clicked As TreeNode = TreeView_ZON.GetNodeAt(e.X, e.Y)
If e.Button = MouseButtons.Right Then
MsgBox(clicked.TreeView.Nodes(0).Text)
<b>TreeView_ZON.SelectedNode=clicked</b>
End If
End Sub
</code>Sv: Känna musknapp i TreeView_1_AfterSelect?
När man högerklickar på en NODE vill jag ha tillhörande ZON text
ZON1
NODE
NODE
NODE
ZON2
NODE
NODE
NODE
ZON3
NODE
NODE
NODE
Debug.WriteLine(clicked.Parent.Text)
Detta funkar bra BARA MAN INTE trycker på ZONX
Har du även ett snabbt svar på det!?Sv: Känna musknapp i TreeView_1_AfterSelect?
<code>
Private Sub TreeView_ZON_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TreeView_ZON.MouseDown
Dim clicked As TreeNode = TreeView_ZON.GetNodeAt(e.X, e.Y)
If e.Button = MouseButtons.Right Then
if Not clicked.Parent=null then
MsgBox(clicked.Parent.Text)
end if
MsgBox(clicked.TreeView.Nodes(0).Text)
TreeView_ZON.SelectedNode=clicked
End If
End Sub
</code>Sv: Känna musknapp i TreeView_1_AfterSelect?
<code>
If clicked.Parent = Nothing Then Exit Sub
</code>
men efter ditt svar så gick det upp ett ljus!
<code>
If clicked.Parent is Nothing Then Exit Sub
</code>
TACKAR IGEN FÖR HJÄLPEN!!!
Denna frågan hör inte till denna tråden men...
Förstår att du kör C#. Har själv fastnat i VB träsket.
Går man miste om mycket om man håller sig till VB.
Tycker att nu när man kör i samma ramverk så borde det vara sak samma?Sv: Känna musknapp i TreeView_1_AfterSelect?
Fast det finns vissa saker som jag inte gillar i VB.Net men det finns de som gillar det. T.ex. så finns det ju mycket som är inbyggt i språket som jag tycker borde ligga i t.ex. utvecklingsmiljön om man skall ha det. Sen att man inte behöver typa saker anser jag är lite fel... men men...
Själv började jag med VB, körde Java och då kändes steget till C# bättre än att gå till VB.Net.... C# känns lite mer "riktigt"... men jag tycker att man skall köra på det man känner för. Det är ju precis som du säger ramverket som är det intressanta. Jag sitter ju här och svarar på en massa VB.Net frågor trots att jag glömt bort all syntax (läste faktiskt 5 p VB.Net i höstas).