2011-08-19 27 views
6

Như tiêu đề gợi ý, tôi chỉ đang tìm cách nhấn nút trong Giày mà không cần nhấp vào.Nhấn phím Enter thay vì Nhấp vào nút với Giày (Ruby)

Tôi đã tìm kiếm trên diễn đàn, nhưng tiếc là không thể tìm thấy bất kỳ điều gì.

Cảm ơn

+1

tôi chắc chắn có thể thấy lý do tại sao bạn muốn sử dụng ngón tay để bấm phím ENTER thay vì phải nhấc chân của bạn bấm vào một nút với giày của bạn . (Than ôi, tôi không thể giúp bạn với câu hỏi của bạn, mặc dù!) – ewall

+0

Lol, cảm ơn! Không hoàn toàn là những gì tôi đã làm sau đó. – Josh

+0

Bạn có thể làm rõ: bạn đang cố gắng nhấp vào nút lập trình dựa trên bất kỳ tiêu chí/sự kiện nào khác hoặc bạn đang cố gắng chỉ định khóa Enter chỉ hoạt động khi nút đó được tập trung? – Phrogz

Trả lời

1

rằng sẽ không làm việc trong giày màu đỏ dưới cửa sổ từ các cửa sổ controlls ăn cắp tất cả các sự kiện. Tôi quản lý để có được điều này tại nơi làm việc trong đôi giày màu xanh lá cây dưới cửa sổ mặc dù.

Dưới đây là một ví dụ

['green_shoes'].each(&method(:require)) 
Shoes.app{ 
    e = edit_line 
    button("Click me!"){alert("You clicked me.")} 
    keypress { |k| alert("You pressed Enter") if k == "\n"} 
} 

Grtz

+0

Ồ, bạn có ví dụ về cách bạn đã làm điều đó với Giày Xanh không? – Josh

+0

Tôi đã chỉnh sửa câu trả lời của mình để bao gồm một ví dụ, xin lỗi đã mất quá nhiều thời gian, quên chủ đề này, BTW, có một phiên bản mới của Green Shoes, hãy xem nó! – peter

+0

Hoàn hảo! Cảm ơn, tôi sẽ chỉ phải viết lại ứng dụng của mình để sử dụng Green Shoes! – Josh

1

Tôi không có giày vào lúc này, nhưng tôi tin rằng bạn có thể bẫy bấm phím và thực hiện hành động của nó như sau:

button('Click me') { do_something } 

keypress { |k| do_something if k == '\n' } 

Từ hướng dẫn:

Một báo trước cho tất cả các quy tắc đó: thông thường, phím Quay lại cung cấp cho bạn chuỗi "\n". Khi ép với các phím modifier, tuy nhiên, bạn kết thúc với :control_enter, :control_alt_enter, :shift_alt_enter