У меня есть панель (панель2) внутри другой панели (панель1). Я хочу получить положение мыши на панели 1, но когда я перемещаю указатель мыши на панели2, следующий код перестает работать.получение позиции мыши различного управления
private void panel1_MouseMove(object sender, MouseEventArgs e)
{
label1.Text = "Offset: " + e.X + " x " + e.Y;
}
Как я могу получить его, чтобы прочитать аргументы мыши, даже если мышь над панелью2? Благодаря!
EDIT: panel2 находится в центре x = 100, y = 100 панели1. если я перемещаю мышь на левый верхний угол панели2, он дает мне координаты, например, 1x1, где мне нужно располагать на панели 1, например 101x101
EDIT 2: Я не пытаюсь перетащить его, просто прочитайте координаты исходной панели (panel1), поэтому я могу рассчитать смещение для масштабирования панели2. Поэтому мне нужно только mousemove, больше ничего. Спасибо
Вам не нужен обработчик для MouseMove на панели2? Этот обработчик запускается только панелью 1, когда вы находитесь над панелью2, она должна запускать собственное событие. Другими словами, событие расходуется, оно не будет автоматически возвращаться к родительскому. – DonBoitnott
Вам нужно сделать это, только когда удерживается кнопка мыши? –
Проблема в том, что я также назначаю событие panel2, он сообщает координаты мыши панели2, а не panel1. Мэтью, мне нужно только прочитать x y, когда мышь движется благодаря. – Kristian