[vb.net] Ctrl + C, Ctrl + V 사용하기 > vb.net

본문 바로가기

vb.net

[Controls] [vb.net] Ctrl + C, Ctrl + V 사용하기

회원사진
하나를하더라도최선을
2023-11-22 10:57 598 0
  • - 첨부파일 : CopynPaste.zip (49.7K) - 다운로드

본문



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 ObjectByVal 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


댓글목록0

등록된 댓글이 없습니다.
게시판 전체검색