자료실

부자는 돈을 써서 시간을 아끼지만 가난한 사람은 시간을 써서 돈을 아낀다

vb.net

IT HUB를 찾아주셔서 감사합니다.

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

페이지 정보

profile_image
작성자 하나를하더라도최선을
댓글 0건 조회 2,082회 작성일 23-11-22 10:57

본문

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


첨부파일

댓글목록

등록된 댓글이 없습니다.