2014-11-06 1 views
1

Qt5 응용 프로그램 tutorial을 통해 갈 것입니다.Qt, tr에서 "&"사용

newAct = new QAction(QIcon(":/images/new.png"), tr("&New"), this) 
... 
openAct = new QAction(QIcon(":/images/open.png"), tr("&Open..."), this); 
... 
enter code exitAct = new QAction(tr("E&xit"), this); 
... 

나는이 "&는"사용하는 이유를 찾을 수 없습니다, TR에 Qt는 문서화가없이 이러한 표기법을 사용 행동의 창조, 나는 때라도 등 "&"의 사용을보고 계속 그들이 무엇을 위해 설명하는지. 또한 "&"기호를 삭제하면 결과 응용 프로그램이 전혀 변경되지 않는 것 같습니다.

+0

정확하게 기억한다면 문자열이 설명하는 동작에 대한 키보드 단축키가 설정됩니다. (예를 들어이 경우 Windows에서는 Ctrl-X가됩니다.) – Adam

+0

감사합니다 모두들이 점에 대해 설명해 주시겠습니까? 나는 어떤 키워드를 검색 할 지조차 모른다. – Asy

답변

6

tr까지는 &이 문자열의 다른 문자이며 특별한 의미가 없습니다.

QAction에 특별한 의미가 있습니다. 다음 문자를 메뉴 내의 항목 바로 가기로 설정하므로 "파일"메뉴가 열려있을 때 n 키를 누르면 "새 항목"이 활성화되고, x는 "Exit"와 같이 계속 활성화됩니다. OS에 따라 & 뒤에 오는 문자에 밑줄을 칠 수도 있습니다 (Windows에서는 Alt 키를 누를 때 밑줄이 그어집니다).

+1

Windows에서 최소한 이러한 바로 가기 키는 메뉴에만 적용되지 않습니다. 그들은 모든 위젯을위한 것일 수 있습니다. 예 : 'O'를 누르고 "& Ok"로 정의 된 버튼이있는 경우 버튼을 활성화합니다 (텍스트 위젯과 같은 키 누르기를 캡처하는 위젯에 있지 않은 경우) – RobbieE

2

&은 주어진 메뉴 항목에 대한 Alt 키 바로 가기에 사용해야하는 문자를 나타내는 데 사용됩니다. 이러한 작업이 &File이라는 메뉴에 있다고 가정하고 Alt-F을 누른 다음 N을 입력하면 New 동작이 활성화됩니다.