Windows에서 QT 응용 프로그램을 사용하고 있으며 화살표 키를 사용하는 모드와 이러한 화살표 키를 완전히 무시하는 모드가 있습니다. 즉, 사용자가 상자를 체크하면 화살표 키가 어떤 이벤트도 트리거하지 않게하려고합니다.QT : 확인란 선택시 키 이벤트 무시
나는 eventFilter()
이 제안 된 게시물을 보았지만 사용법을 알지 못했습니다. 다음은 사용자를 청취하고 사용자가 확인한 후에 트리거되는 체크 박스 이벤트입니다. else 부분에서 eventFilter()
이 화살표 키로 작동하기를 원하지만 지금까지는 실행하지 못했습니다.
void MainWindow::on_checkBoxSmartCutMode_stateChanged(int arg1)
{
if (arg1 == 0)
{
// do as usual, arrow keys should work
}
else
{
eventFilter(); // if any arrow key is pressed, ignore the event
}
}
의견이 있으십니까?
[여기] 기본 버전이 (https://stackoverflow.com/a/26976984/3484570). 화살표 키를 사용하고 확인란 상태를 확인하기 위해 변경해야합니다. 화살표 키 핸들러에서 직접 if (checkbox.isChecked()) return;를 직접 수행 할 수도 있습니다. – nwp