Документация для make_scorer выглядит следующим образом:
sklearn.metrics.make_scorer(score_func, greater_is_better=True, needs_proba=False,
needs_threshold=False, **kwargs)
Таким образом, вам не нужно передавать аргументы при вызове функции. Это то, что вы спрашивали?
Я не полагаю, что это возможно, хотя типичный эквивалент указывает один из флаги MessageBoxButtons с Отмена (конкретно YesNoCancel в Вашем случае).
Это должно быть довольно просто для воссоздания собственной функции MessageBox с этой функцией, если Вы действительно хотите это, хотя действительно Отмена делает задание.
Необходимо включить опцию "Cancel" с перечислением значений "MessageBoxButtons. YesNoCancel"
Это возвратит DialogResult. Отмена
Я подозреваю это, если Вы включаете MessageBoxButtons. YesNoCancel, Escape по умолчанию соединен проводом для отмены, который возвратит MessageBoxResult Отмены.
Я думаю MessageBox
(и тот в WinForms и WPF), один из тех компонентов, которые лучше всего переопределены. Его поведение так твердо, что любой вид рефакторинга почти невозможен. Короче говоря, самокрутка - тот способ, которым у Вас могут быть Escape близко это и что-либо еще, которое можно потребовать.
существует проект на CodePlex, названном InfoBox, который мог быть полезен для Вас.
В дополнение к другим ответам это - вероятно, плохая практика, чтобы позволить пользователю закрывать диалоговое окно с Escape, если это не показывает кнопку "Cancel", поскольку это отличается от поведения по умолчанию, которое пользователи ожидают от Приложений Windows, и они могут стать сомнительными, относительно которого действия они просто взяли путем нажатия клавиши выхода.
, Как уже упомянуто добавление кнопки "Cancel" автоматически создаст желаемый эффект.
Это походит на MessageBoxButtons. OkCancel - то, что Вы ищете, Вы просто одержимы тем, что вопрос не соответствует хорошо/отменять.
Вы могли в теории писать свою собственную форму MessageBox, которая делает то же самое и связывается No с Клавишей выхода, которая выполнила бы точно, что Вы хотите с небольшим количеством дополнительной работы.
Другая опция состоит в том, чтобы перефразировать Ваш вопрос, например:
MessageBox.Show(this, "The following operation will format your computer.\r\nPress Ok to continue, Cancel to abort", "Confirm Format", MessageBoxButtons.OkCancel, MessageBoxIcon.Warning);
Просто пример, но это вероятно простое решение Вашей дилеммы.