![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Пользователь
Регистрация: 12.08.2013
Сообщений: 99
|
![]() Код:
|
![]() |
![]() |
![]() |
#12 |
Просветитель
Участник клуба
Регистрация: 26.12.2012
Сообщений: 1,844
|
![]()
Alexandr17-10, если ты пишешь игру "крестики-нолики", перестань заниматься фигней и напиши как человек.
Каждому полю соответствует свое состояние: "чисто", "крестик", "нолик". Отрисовка делается в OnDrawCell, -- только там. Остальные управлющие элементы изменяют состояние игрового поля, настройки и прочее, после чего вызывается перерисовка игрового поля методом Invalidate. Если чистые поля могут иметь разные рубашки -- это настройка. Получается, что есть среда -- игровое поле, и все остальное пляшет вокруг нее. В этом ключе и думай.
В разработке: воспроизводственный контур ИТ
|
![]() |
![]() |
![]() |
#13 |
Software Developer
Старожил
Регистрация: 19.12.2008
Сообщений: 2,070
|
![]()
ТС хочет совместить данные с UI, что не есть хорошо...Даже для игры "крестики-нолики"...
В целом ничего сложного - поле это массив NxM, значения элементов которого равны тому, что Vapaamies написал (например, 0 -"чисто", 1 -"крестик", 2 -"нолик")...Изначально массив заполнен 0 (нулями). Игрок, посредством UI, изменяет элементы данного массива, после чего идет перерисовка UI в буфер (тот же TBitmap) и далее уже выводите нарисованное на Canvas чего либо... Как-то так...общая идея думаю должна быть понятна... ![]()
Будь проще и люди к тебе потянутся
|
![]() |
![]() |
![]() |
#14 |
Пользователь
Регистрация: 12.08.2013
Сообщений: 99
|
![]()
А как сделать отрисовку ведь он отрисовывает для каждой ячейки мне вот нужна проверка какой тайл отрисовывать
Код:
Последний раз редактировалось Alexandr17-10; 09.09.2013 в 16:43. |
![]() |
![]() |
![]() |
#15 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
Код:
Тогда: Код:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#16 |
Пользователь
Регистрация: 12.08.2013
Сообщений: 99
|
![]() Код:
|
![]() |
![]() |
![]() |
#17 |
Пользователь
Регистрация: 12.08.2013
Сообщений: 99
|
![]()
Хотя не надо вот код
Код:
С 3 на 3 полем ии сделатьне проблема но мнебы хотелась сделать для всех размеров 4 на 4 или 5 на 5 по правилу что и в обычных крестиках ноликах |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как привязать компоненту TComboBox к Button, чтобы при нажатии Button, данные из ComboBox вводились в TstringGrid | Marta_ | Помощь студентам | 2 | 15.10.2011 01:02 |
Открывать/создавать папку по нажатию на Button | Akemi | Общие вопросы Delphi | 5 | 01.09.2010 19:47 |
Как рисовать через Canvas на TPageControl | Манжосов Денис :) | Компоненты Delphi | 2 | 24.01.2010 21:33 |
Как по нажатию на Button открыть документ, выбранный в OpenDialog | Stranger333 | Общие вопросы Delphi | 4 | 12.11.2009 14:27 |
Как рисовать на Canvas объектов | Jean-Esther | Общие вопросы Delphi | 2 | 02.03.2009 02:57 |