Tôi có một Qaction trên một mục menu để xóa các mục đã chọn trong một trong các giao diện của tôi. Đây là cách tôi tạo hành động:Phím tắt QAction không luôn hoạt động
deleteAct = new QAction(tr("Delete Selected"), this);
deleteAct->setShortcut(QKeySequence::Delete);
connect(deleteAct, SIGNAL(triggered()), this, SLOT(deleteSelected()));
Tôi thiết lập phím tắt (phím xóa) sẽ kích hoạt hành động delectAct. Nó hoạt động hầu hết thời gian nhưng tại một số điểm nó ngừng hoạt động ... Có ai biết tại sao các phím tắt sẽ ngừng làm việc?
Lưu ý: tác vụ vẫn hoạt động nếu tôi kích hoạt nó từ mục menu. nó chỉ là các phím tắt mà không làm ...
+1 Phím tắt menu ngữ cảnh của tôi không hoạt động như tôi muốn cho đến khi tôi cũng đã thêm vào các hành động chính của cửa sổ. – rendon
Ngoài ra, action-> setShortcutContext (...); phải được đặt, xem câu trả lời của người dùng362638. – Tob
Không nhất thiết; ngữ cảnh phím tắt mặc định là Qt :: WindowShortcut, đó là những gì bạn muốn trong ví dụ của áp phích gốc. Bạn không muốn phím Delete để xóa mục đã chọn trong cửa sổ A khi nhấn Delete trong cửa sổ B, chắc chắn. Qt :: ApplicationShortcut có ý nghĩa cho các lối tắt toàn ứng dụng (tức là các phím tắt sẽ hoạt động từ bất kỳ cửa sổ nào của ứng dụng). –