vb.net textbox1选中的文本,拖放到textbox2?
发布网友
发布时间:2023-10-19 12:05
我来回答
共2个回答
热心网友
时间:2024-12-02 03:58
很久没有上这里了,今天看到了这个问题,尝试做了一个;
本例以源文本框TextBox1全部文字作为拖放文字为例,实现拖放
1、向一个窗体中添加两个文本框,分别名为TextBox1,TextBox2。注意:把TextBox2控件的AllowDrop属性设置成True,这点不要遗漏。
2、完整的代码如下:
Public Class Form1
Private MouseIsDown As Boolean = False
Private Sub TextBox1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseDown
'设置一个标志以显示鼠标已按下。
MouseIsDown = True
End Sub
Private Sub TextBox1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseMove
If MouseIsDown Then
'开始拖动(将TextBox1的文本内容作为拖放内容)。
TextBox1.DoDragDrop(TextBox1.Text, DragDropEffects.Copy)
End If
MouseIsDown = False
End Sub
Private Sub TextBox2_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles TextBox2.DragEnter
'检查正在被拖放的数据的格式。
If (e.Data.GetDataPresent(DataFormats.Text)) Then
'显示复制光标(表示是拖放行为)。
e.Effect = DragDropEffects.Copy
Else
'显示不放置光标(表示不是拖放行为)。
e.Effect = DragDropEffects.None
End If
End Sub
Private Sub TextBox2_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles TextBox2.DragDrop
'粘贴文本(将拖放内容作为TextBox2的文本内容)。
TextBox2.Text = e.Data.GetData(DataFormats.Text)
End Sub
End Class追问我非常敬佩老师的学问,谢谢老师的解答!
我试了一下代码,把否则、结束如果、结束子改成英文,基本可用 。
还用个问题,我的问题的相法,是把选中的文本(高亮的文本)拖动到textbox2.text 高亮部分在textbox1中消失。
我是个初学者,麻烦老师帮助解答!
追答
你好!修改如下:(因为字数*,只能用图片形式了)
来自:求助得到的回答
热心网友
时间:2024-12-02 03:58
难道默认是不能拖的??