Tôi cần theo dõi bất kỳ thay đổi độ phân giải màn hình nào trong ứng dụng của mình, đi kèm với ứng dụng của tôi ở phía trước hay không.Có cách nào để biết liệu một ứng dụng khác có thay đổi độ phân giải màn hình trong Cocoa không?
tôi đã tìm kiếm rất nhiều trên internet ngày hôm qua và đã thử tất cả các tùy chọn này:
applicationDidChangeScreenParameters;
CGDisplayRegisterReconfigurationCallback;
NSApplicationDidChangeScreenParametersNotification;
tôi nhận được thông báo khi tôi thay đổi độ phân giải bằng tay hoặc cắm/rút phích cắm của một màn hình mới.
Nhưng tôi không nhận được thông báo khi các ứng dụng khác thay đổi thông số màn hình (hầu hết các trò chơi được thực hiện trước năm 2011).
Có cách nào để biết liệu Mọi ứng dụng mac có thay đổi độ phân giải màn hình không? Ngay cả khi ứng dụng của tôi ở chế độ nền? Mọi thông báo? Hy vọng rằng không có API trợ năng ...?
Thank you very much
EDIT (tháng 9)
này câu trả lời Events when dock is showing or hiding giúp tôi một chút. Vì tôi nhận được thông báo khi một ứng dụng khác vào/thoát chế độ toàn màn hình, nhưng không phải khi nó thay đổi độ phân giải mà không thay đổi trạng thái toàn màn hình =/Và nó dựa trên các API Carbon không được chấp nhận trên 10.8 ...
Nó không chính xác Tôi muốn nhưng hoạt động trong hầu hết các trường hợp ... Có cách nào khác để đạt được trên ca cao không? Bất kỳ thông báo toàn cầu nào về điều này?
Bạn đang làm điều này để làm gì? Nếu người dùng khởi chạy trò chơi toàn màn hình, ứng dụng của bạn có lẽ không nên làm gì để phản hồi điều này, vì người dùng sẽ không tương tác đồ họa với ứng dụng của bạn trong suốt thời gian của trò chơi và độ phân giải màn hình sẽ được khôi phục khi trò chơi thoát. – user57368
Đây là ứng dụng của tôi: http://joystickmapper.com/ Nó chạy trên nền và tôi cần phải biết nếu có bất cứ điều gì thay đổi độ phân giải màn hình để khắc phục sự cố xảy ra trong một vài trò chơi khi sử dụng độ phân giải khác với máy tính để bàn. – Rodrigo