Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636

Задача с движущейся кнопкой

09.01.2020, 00:26. Показов 1958. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток.
Наткнулся на интересную задачу:
"Приложение с двигающейся (и убегающей от указателся мышки!) кнопки OK. Приложение должно демонстрировать таблицу координат кнопки."

Проблема в том, что я даже не знаю с чего начать.

Поделитесь,можалуйста, мудростю, как создать такое приложение
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.01.2020, 00:26
Ответы с готовыми решениями:

Delphi 6. Задача с кнопкой
Нужно, что-бы при нажатии на кнопку окно(memo1) становилось видимым, а при повторном нажатии исчезало. Я почти сделал это но, у меня при...

Кнопка, создающее новое окно с кнопкой и с заблокированной кнопкой закрытия окна
Столкнулся с такой проблемой: нужно создать окно, в котором будет две кнопки. Первая кнопка открывает новое окно, и в этом окне есть...

Создание движущейся рамки
Здравствуйте! Прошу вас помочь написать программу - средствами прерывания 10h отобразить на экране рамку из псевдографических символов,...

6
130 / 68 / 31
Регистрация: 24.07.2018
Сообщений: 787
09.01.2020, 09:55
Vlast001, создать форму, в форме начальное положение кнопки, таблицу.
Найти какое то событие, которое бы срабатывало при наведении на кнопку и заставить кнопку сдвигаться (менять координаты, рандомные координаты или фиксированное смещение, но надо проверку делать не находится ли в этих координатах курсор мыши) и записывать в таблицу новые координаты.
0
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
09.01.2020, 15:09  [ТС]
MaksimkaI, Подскажите, что такое фиксированное смещение, не совсем догоняю как это.
Цитата Сообщение от MaksimkaI Посмотреть сообщение
записывать в таблицу новые координаты
Вы же имеете ввиду динамическое отображение координат? Не подскажите о чем почитать, чтобы иметь хотя бы представление как это осуществить.
Как собственно заставить кнопку сдвигаться? Это перерисовка кнопки при помощи System.Drawing?

Последний вопросик.
Цитата Сообщение от MaksimkaI Посмотреть сообщение
создать форму, в форме начальное положение кнопки, таблицу.
рационально ли будет сначала создать TableLayoutPanel поделить на две чатси в одной бегающая и убегающая от мышки кнопка, а в другой поставить Panel и затем DataGridView или это все лишнее достаточно просто Button и DataGridView?
0
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
09.01.2020, 16:53  [ТС]
MaksimkaI, Я сделал просто убегающую кнопку от мыши и поставил пустую таблицу.
Скажите пожалуйста, что сюда дописать:
C#
1
2
3
 button1.Location = new Point(
                rnd.Next(0, this.ClientSize.Width - 25),
                rnd.Next(0, this.ClientSize.Height - 25));
чтобы кнопка не заходила на элемент управления DataGridView?

Во вложении есть таблица просто с записанными строками, так на будущие. Подскажите, пожалуйса, как убрать ту серую хрень после табличных данных, ведь если я просто вручную уменьшею весь размер таблицы то появляеться штучка которую можно двигать колессом мыши(прокрутка короче говоря)?
Изображения
 
0
31 / 15 / 7
Регистрация: 08.01.2019
Сообщений: 636
09.01.2020, 17:06  [ТС]
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
private void Form1_Load_1(object sender, EventArgs e)
        {
            Random rnd = new Random();
            button1.Location = new Point(
                rnd.Next(0, this.ClientSize.Width - 25),
                rnd.Next(0, this.ClientSize.Height - 25));
//Почему кнопка сама не двигаеться?
 
            BindingList<SampleRow> data = new BindingList<SampleRow>(); 
            data.Add(new SampleRow(this.button1.Location.X, this.button1.Location.Y));
            //как получить новые координаты?
 
            dataGridView1.DataSource = data;
        }
 class SampleRow
    {
        public float X { get; set; } 
        public float Y { get; set; }
 
        public SampleRow(float x, float y)
        {
            this.X = x;
            this.Y = y;
        }
}
0
130 / 68 / 31
Регистрация: 24.07.2018
Сообщений: 787
10.01.2020, 07:08
Цитата Сообщение от Vlast001 Посмотреть сообщение
чтобы кнопка не заходила на элемент управления DataGridView?
сгенерированные координаты кнопки надо проверить не входит ли в область координат таблицы, и если входит, то генерируй заново.

Добавлено через 1 минуту
Цитата Сообщение от Vlast001 Посмотреть сообщение
Подскажите, пожалуйса, как убрать ту серую хрень после табличных данных, ведь если я просто вручную уменьшею весь размер таблицы то появляеться штучка которую можно двигать колессом мыши(прокрутка короче говоря)
найди свойство у DGV, которое отвечает за прокрутку и отключи
0
130 / 68 / 31
Регистрация: 24.07.2018
Сообщений: 787
10.01.2020, 07:57
Vlast001, RandomMouse.rar
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.01.2020, 07:57
Помогаю со студенческими работами здесь

Изображение движущейся радуги
Составить программу на паскале,которая формирует на экране изображение движущейся радуги. В программе должны быть комментарии,поясняющие...

CharacterController на движущейся платформе
Добрый день! Подскажите, пожалуйста, как сделать так, что бы CharacterController мог стоять и ходить на движущейся платформе! Я...

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

Нарисовать секундомер с движущейся стрелкой
Создать приложение, в котором нарисован секундомер с движущейся стрелкой.

Нарисовать красный движущейся круг
Только начали учить графику. Как нарисовать круг и заставить его перемещаться к границе окна? Сам круг у меня получилось нарисовать....


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes. А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru