Trong ngôn ngữ Swift phát triển ứng dụng cho MacOs, mình viết một Control đặt tên là MyButton là lớp con của NSButton, vấn đề mà mình chưa thể giải quyết là: làm thế nào để kiểm tra xem Control đang có focus hay mất focus? (Ví dụ khi đả click chuột lên MyButton thì nó có focus, click chuột sang control khác thì mất focus). Mong mọi người giúp đỡ?
Làm thế nào để kiểm tra xem Control đang có focus hay mất focus trong Swift MacOs
1 Like
Mình chỉ là iOS dev, chưa viết macOS app, nhưng theo những gì mình search thì có thể sử dụng đoạn code sau để check
extension NSButton {
var isFirstResponder: Bool {
if let responder = NSApplication.shared.firstResponder {
return self == responder
}
return false
}
}
var button = NSButton()
let isFocus = button.isFirstResponder
Hi vọng có thể giúp được bạn.
4 Likes
cám ơn bạn đã trả lời cho câu hỏi của minh, mình sẻ thử.
Mình đã tìm ra cách có lẽ là tạm dùng được, đó là dùng NSTrackingArea rồi thêm vào hàm có sẳn của NSButton là updateTrackingAreas trong code của control của mình (MyButton)
3 Likes