Приложение на основе документа сразу же завершает работу над документом после cmd + w и не сохраняется. Как я могу отреагировать на это и запросить сохранение документа или его автоматическое сохранение?В приложении на основе документов, как вы предотвращаете потерю данных, когда пользователь случайно нажал cmd + w, а не cmd + s?
0
A
ответ
1
Используйте метод NSDocument
updateChangeCount(_:)
, чтобы отметить ваш документ как отредактированный, а Cocoa позаботится об остальном!
Кроме того, если вы используете NSUndoManager
для всех изменений, он обновит счет изменений для вас!
В большинстве случаев вы должны искать эти «крючки» в существующих функциях Cocoa, так что ваше приложение ведет себя точно так же, как и другие приложения OS X, и поэтому вы наследуете новые функции, когда новые версии ОС выпущены.
Смежные вопросы
- 1. NSBorderlessWindow не отвечает на CMD-W/CMD-M
- 2. Что такое `cmd/s`?
- 3. Имитировать cmd + w на окнах
- 4. Пользователь Runtime.exec (cmd)
- 5. Как отправить ввод в cmd, когда cmd запущен как администратор?
- 6. Как проверить программы на основе cmd?
- 7. Время CMD выход на основе
- 8. Обнаружение cmd + r и cmd + w (и ctrl + r и ctrl + w) через Javascript?
- 9. Не удается поймать Cmd-S на Chrome на Mac
- 10. Загрузка cmd в консольном приложении
- 11. Пользователь maven работает от windows cmd, а не от cygwin
- 12. Как определить, скрыто ли окно (cmd-h) и закрыто (cmd-w) - Mac
- 13. Как сопоставить cmd + s, чтобы сохранить все?
- 14. Opera/Mac: переопределить событие cmd + S?
- 15. CMD Script: Как закрыть CMD
- 16. Как вы привязываете Home/End к действию как Cmd-Left/Cmd-Right в Eclipse на Mac?
- 17. Как вы используете переменные ENV в CMD, на альпийском изображении?
- 18. cmd: regedit from cmd
- 19. Как вы предотвращаете клики?
- 20. ExitCode не возвращается на CMD
- 21. Как закрыть NSWindow на Cmd + W без ярлыка меню?
- 22. код работает только в cmd, а не в программе
- 23. windows cmd attrib -s -h -r i: \ *. */S/d
- 24. Подстройка на основе контекста python cmd
- 25. Запустить subprocess.call (cmd), когда cmd является текстовой переменной
- 26. Как перехватить Cmd + Q
- 27. OSX: запретить закрытие окна при нажатии пользователем команды cmd + w
- 28. SQL Как расширенный CMD
- 29. CMD заканчивается, когда удаление не удается
- 30. Анализ данных из cmd
Tried [self updateChangeCount: NSChangeUndone]; в readFromData ... без эффекта. Док все же закрывается мгновенно, и все данные теряются. – iamjustaprogrammer
Это потому, что 'NSChangeUndone' предназначен для того, чтобы сообщить документу, что вы запретили изменение - вместо этого используйте' NSChangeDone'. – andyvn22