Controls [vb.net] Ctrl + C, Ctrl + V 사용하기
페이지 정보
본문
PreviewKeyDown 이벤트를 활용해서 아주 간단하게 텍스트 박스에서 Ctrl + c, Ctrl + v, Ctrl + a, Ctrl + z ... 등 단축키가 가능하게 설정할 수 있습니다.
Private Sub TextBox1_PreviewKeyDown(sender As Object, e As PreviewKeyDownEventArgs) Handles TextBox1.PreviewKeyDown
If e.Control Then e.IsInputKey = True
End Sub
내 프로젝트에서 모든 텍스트 박스에 적용하고자 한다면 사용자 정의 컨트롤을 만들어 사용하면 됩니다.
Public Class TextBox
Inherits Windows.Forms.TextBox
Private Overloads Sub OnPreviewKeyDown(e As PreviewKeyDownEventArgs)
MyBase.OnPreviewKeyDown(e)
If e.Control Then e.IsInputKey = True
End Sub
End Class
파일같이 첨부합니다.
또한 스튜디오 버전에 따라 다를 수 있으므로 상황에 따라 아래와 같이 이벤트를 활용해야 할 수도 있습니다.
Private Sub textBox1_KeyDown(ByVal sender As Object, ByVal e As KeyEventArgs)
Me.OnKeyDown(e)
If e.Modifiers = Keys.Control AndAlso e.KeyCode = Keys.C Then
textBox1.Copy()
End If
If e.Modifiers = Keys.Control AndAlso e.KeyCode = Keys.V Then
Me.textBox1.Paste()
End If
If e.Modifiers = Keys.Control AndAlso e.KeyCode = Keys.X Then
Me.textBox1.Cut()
End If
If e.Modifiers = Keys.Control AndAlso e.KeyCode = Keys.A Then
Me.textBox1.SelectAll()
End If
If e.Modifiers = Keys.Control AndAlso e.KeyCode = Keys.Z Then
Me.textBox1.Undo()
End If
End Sub
첨부파일
-
CopynPaste.zip (49.7K)
4회 다운로드 | DATE : 2023-11-22 10:57:35
- 이전글[vb.net] 'Microsoft.Jet.OLEDB.12.0' 공급자는 로컬 컴퓨터에 등록할 수 없습니다. 23.11.24
- 다음글[vb.net] LINQ(Language-Integrated Query)를 이용한 전자회로 저항갑 병렬, 직렬 계산하는 방법 23.11.20
댓글목록
등록된 댓글이 없습니다.