Вопрос по лабиринту C# windows form?
Мне надо сделать лабиринт. Как сделать чтобы при касании PictureBox или другого элемента не он либо не проходил или выдавало сообщение?
Пытался через Location но не получилось.
Для начала собери ссылки на все эти элементы в список или массив, чтобы можно было перебрать их все в цикле. Прежде чем перемещать PictureBox, получай Rectangle с его координатами и размером:
Rectangle rect = pictureBox.Bounds;
И сперва перемещай его, вместо PictureBox:
rect.Location = new_location;
Затем проверяй, пересекается ли этот Rectangle в новой позиции с каким-либо элементом из списка:
bool collision = false;
foreach (Control element in element_list) {
collision = rect.IntersectsWith(element.Bounds);
if (collision) break;
}
И потом, в зависимости от результата, либо перемещай в эту позицию PictureBox, либо отменяй перемещение:
if ( ! Collision) pictureBox.Location = rect.Location;
- Вопрос по С# (Си шарп) Windows Form по DataGridView К примеру нужно найти разность между двумя ячейками и записать эту разницу в 3 ячейку, подскажите как сделать
- C#, windows form(работает с рич текст бокс и фонт) Необходимо создать список всех шрифтов, выравнивание по центру, по ширине, по левому краю, ну жирный полу жирный и тп, я разобрался как делать, помогите с этим пожалуйста
- Visual C++ windows form: создаю медиаплеер, стоп и воспроизведение работают, а кнопка next song - нет AxWindowsMediaPlayer1->Ctlcontrols->play(); - работает axWindowsMediaPlayer1->Ctlcontrols->next(); - не работает
- Можно ли на Windows form сделать видеоплеер? Можно ли при помощи windows form сделать например свой видеоплеер (только именно свой и не из средств виндовс) или браузер? Или для этого нужно какие-то другие технологии использовать? Естественно при этом зная c# или c++