Tôi ngạc nhiên rằng tôi không thể tìm thấy câu trả lời cho công việc đơn giản này. Tôi chỉ muốn người dùng nhập văn bản, nhấn enter và để ứng dụng biết bạn đã nhập gì. Làm thế nào tôi sẽ làm điều này?Gọi hàm khi người dùng nhấn enter trong NSSearchField?
5
A
Trả lời
16
NSSearchField
hỗ trợ cơ chế nhắm mục tiêu hành động, vì vậy chỉ cần móc nó vào mục tiêu/hành động. Ví dụ, giả sử bạn đã hành động sau tuyên bố trong đại biểu ứng dụng của bạn:
- (IBAction)searchAnswer:(id)sender;
Trong Interface Builder, ctrl-kéo trường tìm kiếm của bạn vào đối tượng delegate ứng dụng và chọn hành động searchAnswer:
. Trong quá trình triển khai, hãy sử dụng -stringValue
để lấy văn bản được người dùng nhập vào trường tìm kiếm, ví dụ:
- (IBAction)searchAnswer:(id)sender {
NSLog(@"search answer: %@", [searchField stringValue]);
}
Lưu ý rằng theo mặc định, trường tìm kiếm sẽ gửi hành động khi người dùng tạm dừng/dừng nhập. Nếu bạn muốn nó gửi hành động chỉ khi người dùng gõ Enter, hãy chọn hộp kiểm Sends Whole Search String
trong trường tìm kiếm thuộc tính cửa sổ thanh tra.
Các vấn đề liên quan
- 1. Phát hiện khi người dùng nhấn enter trong Java
- 2. Cách phát hiện khi người dùng nhấn Enter trong trường nhập
- 3. Làm cách nào để kích hoạt một hành động khi người dùng nhấn enter?
- 4. javascript nhấn phím enter
- 5. Chọn nút trong khi nhấn nút enter
- 6. Gửi biểu mẫu khi nhấn enter trong Textarea
- 7. android set hidden keybord khi nhấn enter (trong EditText)
- 8. vim script "input()" chức năng không yêu cầu người dùng nhấn enter
- 9. Sự kiện JQuery cho người dùng nhấn enter trong hộp văn bản?
- 10. Xử lý người dùng nhấn phím 'Enter' trong trang web ASP.NET MVC
- 11. KeyListener trong Textfield không kích hoạt khi nhấn enter
- 12. Gửi giá trị khi nhấn Enter trong vùng văn bản và nhấn Shift + Enter phải đi tới dòng tiếp theo
- 13. Ngăn người dùng gửi biểu mẫu bằng cách nhấn enter # 2
- 14. UISeachBar phát hiện khi người dùng nhấn nút
- 15. Hủy AsyncTask khi người dùng nhấn lại nút
- 16. jquery contenteditable enter "Làm cách nào để kích hoạt chuyển đổi khi người nào đó nhấn enter?"
- 17. Phải nhấn enter với nohup
- 18. JSF gọi phương thức đậu từ nhập văn bản khi nhấn Enter
- 19. raw_input trong python mà không cần nhấn enter
- 20. Nhấn Enter để tiếp tục trong C
- 21. Gọi một nút cụ thể trên sự kiện Click khi phím enter được nhấn C#
- 22. Dừng hộp ưa thích khi người dùng nhấn Esc
- 23. Tránh chuyển sang bản ghi tiếp theo khi nhấn Enter?
- 24. JSF 2.0: yêu cầu ajax khi nhấn ENTER
- 25. PuTTY gửi gì khi tôi nhấn phím Enter?
- 26. Phát hiện Phím Enter được nhấn với jquery
- 27. Đóng một hộp thoại bằng cách nhấn Enter
- 28. Nhấn enter hoặc đợi 10 giây để tiếp tục
- 29. Làm cách nào để xử lý thao tác nhấn Enter bằng giao diện người dùng Web Dart?
- 30. Tránh Windows 'Ding' khi Enter được nhấn trong TextBox với OnKeyUp
Cảm ơn! Một số điều quá đơn giản để hiểu, tôi đoán ... – Flafla2
@ Flafla2: Mục tiêu/hành động ở cấp độ cao hơn các sự kiện chính hoặc chuột. Một trường có thể gửi hành động của nó ngay cả khi người dùng không có phím Enter hoặc không có bàn phím nào cả. Một nút có thể gửi hành động của nó ngay cả khi người dùng không có chuột. Sử dụng mục tiêu/hành động có nghĩa là bạn có thể nhận được hành động bất kể thiết bị giao diện người dùng có hoặc không có. –