2012-04-11 41 views
10

Tôi cần biết liệu người dùng có đang giữ phím ctrl trong khi nhấp vào nút hay không. vì nó là một nút và không phải là một con số tôi không thể sử dụng 'selectionType' trên hình vv Có cách nào đơn giản để làm điều này?Phím 'Ctrl' có được nhấn không?

Cảm ơn!

Trả lời

10

Làm thế nào về điều này:

modifiers = get(gcf,'currentModifier');  %(Use an actual figure number if known) 
ctrlIsPressed = ismember('control',modifiers); 

Lớp nhân vật có một số Current* tính hữu ích đó là hữu ích khi xử lý callbacks. Đây là cách lấy vị trí chuột hiện tại, đối tượng đồ họa được chọn, và (như ở đây) các phím bấm. Chúng bao gồm: CurrentAxes, CurrentCharacter, CurrentKey, CurrentModifier, CurrentObject và CurrentPosition.

+0

Dường như bộ sửa đổi cmd bám quanh đường sau khi khóa đã được giải phóng. Có cách nào để tìm ra phím nào đang được nhấn? – codekitty

1

Nhấn phím thoát để khởi động lại CurrentModifier. Giải pháp của tôi cho đến nay là hướng dẫn người dùng của tôi (ngay trong GUI) để nhấn phím thoát để hoàn nguyên về hành vi mặc định. Nhìn chung, hành vi hiện tại của Matlab có vẻ là phím bổ trợ "gậy" cho đến khi một trong những điều sau xảy ra: một công cụ sửa đổi khác được nhấn, một cửa sổ khác được chọn, hoặc phím thoát được nhấn.

Các vấn đề liên quan