Я использую этот код ниже, но он не работает, как я хочу, и я понятия не имею, как это сделать.Получение координат мыши по щелчку мыши
Что я хочу сделать, это получить координаты мыши onClick
, но это происходит после подтверждения пользователем сообщения.
MessageBox> User Нажмите OK> пользователя Нажмите в любом месте на экране> Получить координаты
Должен ли я запустить таймер на кнопку "ОК"? Что я делаю по таймеру, чтобы ждать ответа мыши?
Это то, что я сейчас (который показывает положение мыши при нажатии кнопки OK):
private void button12_Click(object sender, EventArgs e)
{
if (MessageBox.Show("Pick a position after clicking OK", "OK", MessageBoxButtons.OK, MessageBoxIcon.Exclamation) == DialogResult.OK)
{
// user clicked ok
MouseEventArgs me = (MouseEventArgs)e;
Point coordinates = me.Location;
MessageBox.Show("Coordinates are: " + coordinates);
}
}
Возможно, я высказывался некорректно. Но это позволяет мне щелкнуть мышью по кнопке «ОК» на MessageBox. Это не позволяет мне выбрать любую позицию экрана ПОСЛЕ нажатия кнопки ОК. –
Но как только вы нажмете кнопку «ОК», как вы хотите подождать, пока пользователь выберет позицию? Вы не можете использовать таймер, потому что не знаете, когда он будет готов. Тем не менее, вы можете поместить мышь где-нибудь, а затем использовать ENTER, чтобы закрыть всплывающее окно, поэтому в основном «Выберите позицию, прежде чем нажимать OK (с помощью Enter)». Если это не удастся сделать, что бы вы хотели, чтобы произошло событие «Получить позицию мыши»? –
Согласен, это может сработать. Так что я хочу, невозможно? Потому что я видел некоторое программное обеспечение с этой функцией. Как я уже сказал, я понятия не имею, как это сделать.Может быть, кнопка OK запускает таймер, и он создает функцию onClick внутри таймера? Idk –