我有问题,我想看看你是否可以帮助我。
我所寻找的是当我右键单击TexBox
内的单词时告诉我我所提出的单词,然后我可以将该单词添加到我已经创建的字典中。
我的代码:
If textbox1.SelectedText <> "" Then
Dim agr As String = textbox1.SelectedText.Remove(textbox1.SelectedText.Length - 1)
MsgBox(agr)
Else
MsgBox("Select a word by double click to add it to the dictionary")
End If
答案 0 :(得分:1)
有一个名为SelectionStart
的属性,表示文本框中插入符号的位置。当没有选择任何内容时,它的值也会有效。
从那里向左循环,直到遇到单词边界或零。然后循环直到遇到单词边界或Len-1。使用您通过这种方式获得的两个偏移量,使用SubString
函数提取插入符号周围的单词。
答案 1 :(得分:1)
使用此代码可以解决您的问题。如果它适合您,请将其标记为已解决,以便将来的读者得到确认。如果你在下面的评论部分有任何疑问,请向我询问任何问题。
Private Sub Textbox1_MouseDown(sender As Object, e As MouseEventArgs) Handles Textbox1.MouseDown
If MouseButtons.Right Then
If Textbox1.TextLength - Textbox1.Text.IndexOf(" ", 0) > Textbox1.SelectionStart Then
Textbox1.Select((Textbox1.Text.LastIndexOf(" ", Textbox1.SelectionStart) + 1), (Textbox1.Text.IndexOf(" ", Textbox1.SelectionStart) - (Textbox1.Text.LastIndexOf(" ", Textbox1.SelectionStart) + 1)))
Else
Textbox1.Select(Textbox1.Text.LastIndexOf(" ", Textbox1.TextLength) + 1, Textbox1.TextLength - Textbox1.Text.LastIndexOf(" ", Textbox1.TextLength))
End If
End If
End Sub
祝你好运!