Чтобы ответить на ваш первый вопрос, в Руководстве по взаимодействию с пользователем в Windows 7 и Windows Vista указан следующий порядок кнопок команд (p506):
ОК
Отмена
Применение
Помощь
Теперь, вы умнее Microsoft? Ну, вы вряд ли станете первыми, но вы должны доказать это, прежде чем выпускать свой дизайн. Запустите юзабилити-тест для группы пользователей, специально создающих сценарии, чтобы проверить:
Ваш альтернативный порядок кнопок обеспечивает превосходную производительность пользователя.
Это не приводит к снижению производительности, когда пользователь переключается на другое приложение, использующее стандартный порядок.
Идите вразрез с руководством по Windows UX, только если оба приведенных выше факта верны.
Что касается вашего второго вопроса, я бы рекомендовал вам не менять Отмена на Закрыть после того, как пользователь выберет Применить. Кнопка Закрыть обычно подразумевает, что любые последующие изменения не могут быть отменены. Пользователи, возможно, не заметили начальный заголовок кнопки, поэтому могут полагать, что диалоговое окно никогда не поддерживает отмену, что делает пользователя неохотным для дальнейшего изучения диалога. Если оставить подпись как Отмена, пользователи смогут отказаться от любых изменений, которые они сделают дальше. Если некоторые пользователи беспокоятся о том, что «Отмена» отменит все, что они применяли, тогда я ожидаю, что они просто выберут «ОК». Теоретически. Тестирование еще раз скажет вам, что на самом деле думают и делают пользователи, и какой дизайн дает лучший компромисс.
Я согласен с вами, что эти смешанные одноразовые / многоцелевые диалоговые окна OK / Apply являются хитрыми и запутанными. Одна альтернатива, которая решает всю проблему, - это использовать «немедленную фиксацию», когда любые изменения, которые вносит пользователь, немедленно отображаются в приложении (это может быть «инспектор свойств», как называет это руководство по Windows UX). Немедленная фиксация устраняет необходимость в OK, Apply и Cancel. Вместо этого у вас есть Закрыть, и я бы также предложил вам кнопку «Отменить», которая работает как пункт меню «Отменить», последовательно отменяя каждое изменение, сделанное пользователем при каждом выборе. Помимо избежания путаницы «OK / Применить / Отменить / Закрыть», этот дизайн работает быстрее (меньше щелчков мышью, чтобы попробовать изменение), он дает четкое представление о том, какой эффект имеет пользовательский ввод, и поддерживает постепенную отмену («Отмена - это все или ничего»).