4 / 4 / 3
Регистрация: 25.11.2008
Сообщений: 58
|
|||||||||||
1 | |||||||||||
Пятнашки.19.12.2009, 23:36. Показов 1753. Ответов 8
Метки нет Все метки)
(
Доброго времени суток! Пишу игру Пятнашки (TPanel(поле 4х4), на Button реализовывается игровые "фишки", которые надо передвигать(15 шт+1 пустая, 50х50 по размерам)), но возникло пару вопросов:
1. Возможно ли как-то получить координаты нажатой Button с помощью процедуры MouseDown? Или только вписывая в каждую кнопку на OnClick передачу координат?(Нужны для процедуры передвижения фишок) (Пытался реализовать первый вариант, но при нажатии ЛКМ не передаются координаты если выставлено в Events самой формы или панели. Если же вешать MouseDown на кнопки даются координаты внутри их т.е. от 1 до 50) 2. Если же идти по второму пути т.е. реализовать 15 Onclick передачу, то выйдет, что-то на подобии такой процедуры:
Заранее благодарен, если подскажите возможно ли все таки как-то получить координаты мышки с помощью MouseDown или быть может активного фокуса на кнопке.
0
|
19.12.2009, 23:36 | |
19.12.2009, 23:36 | |
Ответы с готовыми решениями:
8
Игра пятнашки Пятнашки с автоматическим решением) Пятнашки |
ﻌﺹ ﺦ ﺖﻀ ﺹ ﻙ ﺵﻔ ﺊ ﺘﺝ
![]() 607 / 387 / 81
Регистрация: 15.12.2009
Сообщений: 753
|
|
19.12.2009, 23:44 | 2 |
Так а зачем тебе координаты мышки? Просто в MouseDown получи координаты кнопки а не мышки вот и всё.
0
|
4 / 4 / 3
Регистрация: 25.11.2008
Сообщений: 58
|
|
19.12.2009, 23:49 [ТС] | 3 |
Не совсем правильно выше выразился, мне действительно нужны координаты кнопок, но как выше написал я их не могу получить т.к. если подрубать MouseDown к кнопкам координаты будут 0<x<50, 0<y<50. А если к форме - так вообще при нажатии на кнопку ничего не передается.
0
|
ﻌﺹ ﺦ ﺖﻀ ﺹ ﻙ ﺵﻔ ﺊ ﺘﺝ
![]() 607 / 387 / 81
Регистрация: 15.12.2009
Сообщений: 753
|
||||||
20.12.2009, 00:10 | 4 | |||||
Я незнаю в чём у тебя ошибка но вот так по MouseDown найти координаты кнопки
Я проверял у меня всё работает и всё правильно находит=)
0
|
4 / 4 / 3
Регистрация: 25.11.2008
Сообщений: 58
|
|
20.12.2009, 00:13 [ТС] | 5 |
По моему выйдет не совсем тот результат который мне надо - у меня 16 кнопок т.е. если пользователь кликнет на любую кнопку то передадутся вместо её координат координаты Button1.
0
|
ﻌﺹ ﺦ ﺖﻀ ﺹ ﻙ ﺵﻔ ﺊ ﺘﺝ
![]() 607 / 387 / 81
Регистрация: 15.12.2009
Сообщений: 753
|
|
20.12.2009, 00:15 | 6 |
0
|
4 / 4 / 3
Регистрация: 25.11.2008
Сообщений: 58
|
|
20.12.2009, 00:19 [ТС] | 7 |
Так это то чего я хотел избежать) У меня сейчас 15 Onclick - для каждой Button.
0
|
ﻌﺹ ﺦ ﺖﻀ ﺹ ﻙ ﺵﻔ ﺊ ﺘﺝ
![]() 607 / 387 / 81
Регистрация: 15.12.2009
Сообщений: 753
|
|
20.12.2009, 00:23 | 8 |
даааа, конечно ето будет оч много кода но по другому реализовать это я незнаю как))
0
|
![]() 9 / 9 / 1
Регистрация: 15.12.2009
Сообщений: 85
|
|
24.01.2010, 22:35 | 9 |
Попробуй добавить до того что ты получаеш етим позицию кнопки на форме то-есть: у+Button.Top
x+Button.Left или я что-то не понял обясните.
0
|
24.01.2010, 22:35 | |
24.01.2010, 22:35 | |
Помогаю со студенческими работами здесь
9
Игра Пятнашки Пятнашки Пятнашки Пятнашки Пятнашки Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
![]() |
Опции темы | |
|
Новые блоги и статьи
![]() |
||||
Использование кэша Laravel - полный гайд
bytestream 18.02.2025
Кэширование - один из наиболее эффективных способов повышения производительности веб-приложений. В современном мире, где скорость загрузки страниц напрямую влияет на удержание пользователей и. . .
|
Создаем REST API в Laravel с аутентификацией через Passport
bytestream 18.02.2025
Разработка современных веб-приложений все чаще требует создания надежного и хорошо структурированного API. REST API стал стандартом де-факто для построения взаимодействия между клиентской и серверной. . .
|
Пайплайны в Laravel - полный гайд
bytestream 18.02.2025
Разработка современных веб-приложений часто требует обработки сложных процессов, состоящих из множества последовательных шагов. Например, при создании системы комментариев может потребоваться. . .
|
Как правильно использовать @required в Symfony
bytestream 18.02.2025
При разработке приложений на Symfony мы часто сталкиваемся с необходимостью внедрения зависимостей. Фреймворк предоставляет несколько способов управления этим процессом, и одним из таких инструментов. . .
|
Система безопасности в Laravel: возможности и примеры
Wired 18.02.2025
Каждый день появляются новые виды атак и уязвимостей, которые могут поставить под угрозу конфиденциальные данные пользователей и функционирование всей системы. В этом контексте выбор надежного. . .
|
Давайте сравним Django и Laravel
Wired 18.02.2025
Django и Laravel - два мощных инструмента, которые часто сравнивают между собой. Оба фреймворка предлагают разработчикам богатый набор возможностей для создания масштабируемых веб-приложений, но. . .
|
Laravel или React - что лучше?
Wired 18.02.2025
В разработке веб выбор правильного инструмента часто определяет успех всего проекта. Особенно интересным представляется сравнение Laravel и React - двух популярных технологий, которые часто. . .
|
Laravel 11: новые возможности, гайд по обновлению
Wired 18.02.2025
Laravel 11 - это новая масштабная версия одного из самых популярных PHP-фреймворков, выпущенная в марте 2024 года. Эта версия продолжает традицию внедрения передовых технологий и методологий. . .
|
Миграции в Laravel
Wired 18.02.2025
Разработка веб-приложений на Laravel неразрывно связана с управлением структурой базы данных. При работе над проектом часто возникает необходимость вносить изменения в схему базы данных - добавлять. . .
|
Аутентификация в Laravel
Wired 18.02.2025
В современном мире веб-разработки безопасность пользовательских данных становится критически важным аспектом любого приложения. Laravel, как один из самых популярных PHP-фреймворков, предоставляет. . .
|