![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 14.07.2008
Сообщений: 47
|
![]()
вообшем мне необходимо сделать шахматы. я никак не могу придумать как сделать игровове поле, т.е. каждая клетка должна иметь свои параметры и координаты вида X Y.
какой элемет для этого можно использовать? |
![]() |
![]() |
![]() |
#2 |
работа не волк....
Форумчанин
Регистрация: 09.06.2008
Сообщений: 337
|
![]()
Создайте массив с элементами TShape. А потом разукрашивайте их через одну.
Цель, для которой требуются неправые средства, не есть неправая цель.
|
![]() |
![]() |
![]() |
#3 |
Участник клуба
Регистрация: 29.01.2008
Сообщений: 1,039
|
![]()
Ну к примеру
Клетка имеет размер 25 px. Карта размером 25 * 10, 25*10. (Смотря сколько клеток в шахматах (я не помню)). Значит массив для обращения к элементам должен быть такой Код:
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 14.07.2008
Сообщений: 47
|
![]()
предлагаете просто клетку нарисовать? боюсь сложно будет каждый раз поле перерисовывать . . . я планировал использовать какой нибудь эллемент. ну к примеру image. присвоить каждому image свои координаты и через них находить нужный элемент. возможно ли сделать что то подобное?
|
![]() |
![]() |
![]() |
#5 |
Участник клуба
Регистрация: 12.08.2008
Сообщений: 1,977
|
![]()
В шахматах поле стандартное 8 х 8 и не изменяется в процессе игры - верхняя левая клетка - белое поле и далее вправо/вниз поочередно черная/белая клетки. Фигур всего шесть - пешка, ладья, конь, слон, ферзь,король. Каждая фигура может быть черной или белой.
Берем переменную status - от 1 до 12 , шесть белых фигур, шесть черных и 0 - пустая клетка. Объявляем массив 8 x8 [0..7,0..7] типа byte и каждой клетке просваиваем статус по расстановке фигур от 0 до 12 . Индекс в массиве каждой клетки легко просчитывается по координатам - (если клетка 50 х 50 пикселей) то 200 х 400 - соответствует 4 по горизонтали и 8 по вертикали (d1 - по шахм. терминологии).
И не сомневайся даже ... отдых - кайф, работа - лажа!
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 14.07.2008
Сообщений: 47
|
![]()
окей . . . уговорили. буду рисовать.
спасибо большое всем за помошь! |
![]() |
![]() |
![]() |
#7 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#8 |
работа не волк....
Форумчанин
Регистрация: 09.06.2008
Сообщений: 337
|
![]()
Хм.. а я про DrawGrid не слышал. Надо будет посмотреть. StringGrid не очень красиво, но обрабатывать легче.
Цель, для которой требуются неправые средства, не есть неправая цель.
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 14.07.2008
Сообщений: 47
|
![]()
вы можете не спорить зря . . . мне на висуал бейсике нада это сделать. так что советы для делфи мне не помогут =\
From Stilet: Мне что закрыть эту тему за нарушения? Почему язык не указал? Последний раз редактировалось Stilet; 17.04.2009 в 17:11. |
![]() |
![]() |
![]() |
#10 |
Участник клуба
Регистрация: 12.08.2008
Сообщений: 1,977
|
![]()
Еще одно подтверждение - суть программа, а язык - это просто инструмент.В Basic те же понятия переменных, операторов подпрограмм, что и во всех ЯВУ. Хотите научиться программингу - разберетесь в алгоритме, а на нет и суда нет.
И не сомневайся даже ... отдых - кайф, работа - лажа!
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как получить чужой комп в свои руки | zetrix | Безопасность, Шифрование | 7 | 13.11.2008 16:32 |
как вытащить значение из sql запроса след.вида | Tanuska___:) | БД в Delphi | 3 | 29.09.2008 15:54 |
Как сделать более точные координаты мышки | xGroupers | Общие вопросы Delphi | 7 | 24.04.2008 23:02 |
Подскажите, как загрузить свои курсоры в Dlephi? | Sequrity | Общие вопросы Delphi | 1 | 23.11.2007 22:49 |
Как вписывать объекты в свои процедуры? | schveine | Помощь студентам | 4 | 02.10.2007 13:46 |