! 제품 버전을 정확하게 입력해 주세요.
제품 버전이 정확하게 기재되어 있지 않은 경우,
최신 버전을 기준으로 안내 드리므로
더욱 빠르고 명확한 안내를 위해
제품 버전을 정확하게 입력해 주세요!

keyup,keydown,keypress 안먹힐때 > Q&A | 토론

본문 바로가기

Spread.NET

Q&A | 토론

WinForms윈폼 keyup,keydown,keypress 안먹힐때

페이지 정보

작성자 RedSeoyeon 작성일 2022-04-27 00:49 조회 1,455회 댓글 0건
제품 버전 : spread10

본문

스프레드에서 esc키 눌렀을때를 처리하고 싶은데

keyup,keydown,keypress 사용해서 처리하니 안되네요

다른방법 있을까요


  • 페이스북으로 공유
  • 트위터로  공유
  • 링크 복사
  • 카카오톡으로 보내기

댓글목록

등록된 댓글이 없습니다.

1 답변

WinForms윈폼 Re: keyup,keydown,keypress 안먹힐때

추천0 이 글을 추천하셨습니다 비추천0 채택채택

페이지 정보

작성자 GCK써니 작성일 2022-04-27 09:14 댓글 0건

본문

RedSeoyeon 님, 안녕하세요.

그레이프시티입니다.


FarPoint.Win.Spread.InputMap 클래스와, FarPoint.Win.Spread.ActionMap 클래스를 사용하여, ESC 키를 눌렀을 때 처리하고자 하는 동작을 사용자 정의할 수 있습니다.

하기 샘플 코드에서는, ESC 키를 눌렀을 경우 메세지박스가 보여지도록 하는 동작을 사용자정의하여 사용하고 있습니다.

private void Form1_Load(object sender, EventArgs e)
{
    FarPoint.Win.Spread.InputMap im = fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenFocused);
    im.Put(new FarPoint.Win.Spread.Keystroke(Keys.Escape, Keys.None), "CustomAction");
    im = fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenAncestorOfFocused);
    im.Put(new FarPoint.Win.Spread.Keystroke(Keys.Escape, Keys.None), "CustomAction");

    FarPoint.Win.Spread.ActionMap am = fpSpread1.GetActionMap();
    am.Put("CustomAction", new CustomAction());
}

private class CustomAction : FarPoint.Win.Spread.Action
{
    public override void PerformAction(object source)
    {
        if (source is FarPoint.Win.Spread.SpreadView)
        {
            // 원하는 동작 구현
            MessageBox.Show("ESC 키 눌림");
        }
    }
}


또는 Spread에서 사용할 수 있도록 SpreadActions 클래스에 미리 정의된 동작을 적용할수도 있습니다.

하기 샘플 코드 적용 시, 셀이 편집모드에 있을 때 ESC키를 입력하면 편집모드가 종료됩니다. (기본 동작은 편집 취소 입니다.)

FarPoint.Win.Spread.InputMap im = fpSpread1.GetInputMap(FarPoint.Win.Spread.InputMapMode.WhenAncestorOfFocused);
im.Put(new FarPoint.Win.Spread.Keystroke(Keys.Escape, Keys.None), FarPoint.Win.Spread.SpreadActions.StopEditing);


자세한 내용은 아래에 링크된 온라인 스터디 게시글과 도움말 문서를 참고하여주시기 바랍니다.

[온라인 스터디] Winforms 키보드 상호작용 

[Spread.NET v10 도움말] 기본 키 입력 처리


추가로 궁금하신 점이 있을 경우, 문의주시기 바랍니다.

감사합니다.

그레이프시티 드림


댓글목록

등록된 댓글이 없습니다.

메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
이메일 : sales-kor@mescius.com | 전화 : 1670-0583 | 경기도 과천시 과천대로 7길 33, 디테크타워 B동 1107호 메시어스(주) 대표자 : 허경명 | 사업자등록번호 : 123-84-00981 | 통신판매업신고번호 : 2013-경기안양-00331 ⓒ 2024 MESCIUS inc. All rights reserved.