2016-06-06 9 views
0

나는 SWT 창 (이클립스 플러그인) 내 버튼 니모닉을 설정하기 위해 노력 해왔다,하지만 불행히도 나는 항상 다음과 같은 경우로 끝날 :니모닉은 SWT 창에 표시되지 않습니다

  1. 어느 쪽이든 setText("&Cancel")을 사용합니다. "alt"버튼을 누르기 전까지는 니모닉이 표시되지 않습니다.
  2. setText("&&Cancel")을 사용하지만 단추는 "& 취소"처럼 보입니다. 이 "이중 앰퍼샌드"트릭은 Eclipse 포럼에서 발견되었습니다.

이미 문제가 발생했다면 해결 방법을 찾을 수있어서 기쁩니다. 읽어 주셔서 감사합니다.

+0

글쎄, 어떻게하는 것이 아니다 니모닉은 작동해야합니까? 사용자가 'Alt'를 누를 때까지 표시하지 않습니까? Windows에서는 니모닉 (http://stackoverflow.com/a/10164042 참조)의 밑줄을 강제로 표시하여 항상 표시되도록해야합니다. – Baz

+0

사실, 네가 옳은 것 같아. 그런 다음 니모닉 문자의 밑줄을 프로그래밍 방식으로 강제 적용하는 방법을 알고 있습니까? 예를 들어 Eclipse 메뉴에는 Alt 키를 누르지 않아도 니모닉이 표시됩니다. – MedAl

답변

0

마지막으로 해결책을 찾을 수있었습니다. 다음은 ALT 키 입력을 시뮬레이션하는 방법은 다음과 같습니다

private void showMnemonics() { 

    Event event = new Event(); 
    event.keyCode = SWT.ALT; 
    event.type = SWT.KeyDown; 
    Display.getDefault().post(event); 

} 

편집 : 나는 다음과 같은 코드가 키 해제하기 위해, 방법에 추가해야합니다 같아요

event.type = SWT.KeyUp; 
Display.getDefault().post(event);