Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.84/25: Рейтинг темы: голосов - 25, средняя оценка - 4.84
0 / 0 / 0
Регистрация: 07.04.2017
Сообщений: 2

Кнопка, убегающая от указателя мыши

07.04.2017, 08:47. Показов 5306. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите написать программу!! Надо чтобы елемент button при контакте с курсором мыши "убегал" от курсора (не в произвольном направлении, а в противоположном от курсора на 10 пикселей и не выходил за пределы формы) P.S. Буду очень благодарен!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.04.2017, 08:47
Ответы с готовыми решениями:

Кнопка убегающая от указателя мыши
Создать следующую программу: при наведении указателя мыши на кнопку ее координаты изменяются произвольным образом в пределах формы (кнопка...

Убегающая кнопка
Всем доброго времени суток нужна ваша помощь. Вот задание: Реализовать кнопку, чувственную к движению мыши. При ее наведении она должна...

Убегающая кнопка
Здравствуйте товарищи программисты. Нужен проект Windows Forms "убегающей кнопки". И чтобы кнопка не выходила за границы формы. ...

5
 Аватар для Aferuga
645 / 529 / 324
Регистрация: 20.05.2015
Сообщений: 1,471
07.04.2017, 13:26
Как-то так, в панель можно поместить что угодно хоть кнопку, хоть листбокс
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
        private void panel2_MouseEnter(object sender, EventArgs e)
        {
            Point cur = panel2.Parent.PointToClient(Cursor.Position);
            Point loc = panel2.Location;
            int x_new = loc.X;
            int y_new = loc.Y;
            if (cur.X<loc.X+5)
                x_new += 5;
            if (cur.X + 5 > loc.X + panel2.Width) x_new += -5;
            if (x_new < 10) x_new = 10;
            if (x_new > panel2.Parent.Width - panel2.Width - 10) x_new = panel2.Parent.Width - panel2.Width - 10;
            if (cur.Y < loc.Y + 5)
                y_new += 5;
            if (cur.Y + 5 > loc.Y + panel2.Height) y_new += -5;
            if (y_new < 10) y_new = 10;
            if (y_new > panel2.Parent.Height - panel2.Height - 10) y_new = panel2.Parent.Height - panel2.Height - 10;
            panel2.Location = new Point(x_new, y_new);
        }
    }
1
07.04.2017, 16:51

Не по теме:

Для каких целей подобное может понадобиться? Для вредоносных, разве что.

0
07.04.2017, 17:38

Не по теме:

kesean, Старый прикол: "Довольны ли вы своей зарплатой?" две кнопки "Да" и "убегающая" от курсора кнопка "Нет":jokingly:

0
0 / 0 / 0
Регистрация: 07.04.2017
Сообщений: 2
07.04.2017, 18:44  [ТС]
Можете подсказать как сделать чтобы кнопка не выходила за пределы формы
0
 Аватар для Aferuga
645 / 529 / 324
Регистрация: 20.05.2015
Сообщений: 1,471
07.04.2017, 21:56
Цитата Сообщение от Vlados777 Посмотреть сообщение
Можете подсказать как сделать чтобы кнопка не выходила за пределы формы
Эм... мой код как бы это предусматривает, разве что можно panel2.Parent заменить на this
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
07.04.2017, 21:56
Помогаю со студенческими работами здесь

Убегающая кнопка
Вечер добрый, нужна помощь в задачке. Реализовать кнопку, чувственную к движению мыши. При ее наведении она должна двигаться в сторону...

Убегающая кнопка
Добрый вечер. Нужна ваша помощь нужно сделать кнопку которая убегала б от курсора. В интернете есть куча инфы как сделать чтоб она рандомно...

Убегающая кнопка без застревания в углах
В диалоговом окне есть вопрос &quot;ты дурак?&quot; и 2 кнопки(да.нет)нужно,чтобы кнопка нет убегала при направлении мыши. проблема в том, что...

Убегающая кнопка от курсора - нужен пример
Всем привет...помогите пожалуйста... вот пытаюсь сделать так чтобы при наведении курсора кнопка убегала,но ни как не получается...сам...

Когда кнопка мыши зажата, событие попадание курсора мыши в фокус контрола не работает
Есть несколько контролов на форме, на все есть событие возникающее когда мышь попадает на этот контрол, но когда зажать клавишу мыши,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru