剖析VB.NETTextBox控件

经过长时间学习VB.NET TextBox控件,于是和大家分享一下,看完本文你肯定有不少收获,希望本文能教会你更多东西。拖放操作的一个很简单然而很有用的情形是从一个VB.NET TextBox控件复制文本到另一个VB.NET TextBox控件。当然你可以只用键盘就能实现(CTRL + C and CTRL + V),然而拖放更简单因为它仅需要鼠标的移动就可以完成。

目前创新互联公司已为成百上千家的企业提供了网站建设、域名、雅安服务器托管网站托管运营、企业网站设计、泰顺网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

向一个窗体中添加两个文本框,并把第二个VB.NET TextBox控件的AllowDrop属性设置成True,添加如下代码。

 
 
 
  1. Private MouseIsDown As Boolean = False 
  2. Private Sub TextBox1_MouseDown(ByVal sender As Object, ByVal e As _  
  3. System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseDown  
  4. ' Set a flag to show that the mouse is down.  
  5. MouseIsDown = True 
  6. End Sub  
  7.  
  8. Private Sub TextBox1_MouseMove(ByVal sender As Object, ByVal e As _  
  9. System.Windows.Forms.MouseEventArgs) Handles TextBox1.MouseMove  
  10. If MouseIsDown Then  
  11. ' Initiate dragging.  
  12. TextBox1.DoDragDrop(TextBox1.Text, DragDropEffects.Copy)  
  13. End If  
  14. MouseIsDown = False 
  15. End Sub  
  16.  
  17. Private Sub TextBox2_DragEnter(ByVal sender As Object, ByVal e As _  
  18. System.Windows.Forms.DragEventArgs) Handles TextBox2.DragEnter  
  19. ' Check the format of the data being dropped.  
  20. If (e.Data.GetDataPresent(DataFormats.Text)) Then  
  21. ' Display the copy cursor.  
  22. e.Effect = DragDropEffects.Copy  
  23. Else  
  24. ' Display the no-drop cursor.  
  25. e.Effect = DragDropEffects.None  
  26. End If  
  27. End Sub  
  28.  
  29. Private Sub TextBox2_DragDrop(ByVal sender As Object, ByVal e As _  
  30. System.Windows.Forms.DragEventArgs) Handles TextBox2.DragDrop  
  31. ' Paste the text.  
  32. TextBox2.Text = e.Data.GetData(DataFormats.  
  33. End Sub 

在上面的例子中,MouseDown事件是用来判断鼠标是否按下的,MouseMove事件中用到了DoDragDrop方法。尽管你可以在 MouseDown事件中来初始化Drag,然而这么做会带来出人意料之外的结果。在用户点击控件时,将显示no-drag 指针。DoDragDrop方法有两个参数
◆data,这个例子中代表的是第一个TextBox的Text属性。
◆allowedEffects,这个例子中是只允许复制。

当前文章:剖析VB.NETTextBox控件
文章位置:http://www.shufengxianlan.com/qtweb/news15/135015.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联