很久沒有上這里了,今天看到了這個問題,嘗試做了一個;
創(chuàng)新互聯(lián)公司主營廣漢網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,app軟件開發(fā)公司,廣漢h5微信平臺小程序開發(fā)搭建,廣漢網(wǎng)站營銷推廣歡迎廣漢等地區(qū)企業(yè)咨詢
本例以源文本框TextBox1全部文字作為拖放文字為例,實現(xiàn)拖放
1、向一個窗體中添加兩個文本框,分別名為TextBox1,TextBox2。注意:把TextBox2控件的AllowDrop屬性設(shè)置成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
'設(shè)置一個標志以顯示鼠標已按下。
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的文本內(nèi)容作為拖放內(nèi)容)。
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
'檢查正在被拖放的數(shù)據(jù)的格式。
If (e.Data.GetDataPresent(DataFormats.Text)) Then
'顯示復(fù)制光標(表示是拖放行為)。
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
'粘貼文本(將拖放內(nèi)容作為TextBox2的文本內(nèi)容)。
TextBox2.Text = e.Data.GetData(DataFormats.Text)
End Sub
End Class
例如,把文件"E:\新建文件夾\a.txt"復(fù)制到剪貼板
CreateObject("Shell.Application").NameSpace("E:\新建文件夾").ParseName("a.txt").InvokeVerb?"復(fù)制(C)"
需要用到文本框的屬性:
SelectionStart
這個就是返回你當前光標所在文本框的位置,注意位置從0開始計算(就是光標在最左邊,返回0)。
然后,需要用到Len()函數(shù),獲得文本框當前的字符數(shù)。
基本思路:
獲得:光標所在位置,SelectionStart
把原來的字符,按照 SelectionStart 值,分成前后兩部分,這樣把:
前部分與S 與后部分連接起來,賦值給文本框。
代碼如下:
TextBox1.Text = Microsoft.VisualBasic.Left(TextBox1.Text, TextBox1.SelectionStart) s Microsoft.VisualBasic.Right(TextBox1.Text, Len(TextBox1.Text) - TextBox1.SelectionStart)
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Clipboard.SetDataObject(TextBox1.Text)
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
TextBox1.Text = Clipboard.GetDataObject().GetData(DataFormats.Text, False)
End Sub
獲得文字直接用
Clipboard.GetText
獲得圖片可以用
Clipboard.GetData
設(shè)置文字直接用
Clipboard.SetText
設(shè)置圖片可以用
Clipboard.SetData
清空
Clipboard.Clear
檢測剪貼板中的內(nèi)容
Clipboard.GetFormat(1)
返回True則文字
返回False則其他
不用剪切板可以這樣
Dim s
Private Sub Command1_Click()
s = Text1.Text
Text1.Text = ""
End Sub
Private Sub Command2_Click()
s = Text1.Text
End Sub
Private Sub Command3_Click()
Text1.Text = Text1.Text + s
End Sub
Private Sub Form_Load()
Command1.Caption = "剪切"
Command2.Caption = "復(fù)制"
Command3.Caption = "粘貼"
End Sub
新建一個控件測試窗體工程,添加一個DataGridView控件,添加前面我們做的擴展控件DataGridViewExt的引用,并在Form1.Designer.vb文件中中將
Friend WithEvents DataGridView1 As System.Windows.Forms.DataGridView
Me.DataGridView1 = New System.Windows.Forms.DataGridView
分別改為:
Friend WithEvents DataGridView1 As DataGridViewExt.DataGridViewExt
Me.DataGridView1 = New DataGridViewExt.DataGridViewExt
然后就可以從Excel,記事本等程序往DataGridView粘貼數(shù)據(jù)了.
分享名稱:vb.net文本粘貼,vb中粘貼的代碼是什么
文章路徑:http://m.rwnh.cn/article38/phjcsp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、網(wǎng)站導(dǎo)航、網(wǎng)站建設(shè)、動態(tài)網(wǎng)站、、虛擬主機
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)