Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.11.2015, 23:00   #11
Rybi
Пользователь
 
Регистрация: 27.10.2015
Сообщений: 18
По умолчанию

а можете подсказать на простеньком примере, как!?
Rybi вне форума Ответить с цитированием
Старый 11.11.2015, 10:03   #12
Iron Monk
Форумчанин
 
Аватар для Iron Monk
 
Регистрация: 05.10.2007
Сообщений: 478
По умолчанию

Код:
procedure TForm1.CreatePole(n: integer{размер клетки});
var
i,c,d:integer;
begin
    c:=0;
    d:=1;
    Canvas.Brush.Color := clBlack;
    Canvas.MoveTo(n,n);
    Canvas.LineTo(n,n*9);
    Canvas.LineTo(n*9,n*9);
    Canvas.LineTo(n*9,n);
    Canvas.LineTo(n,n);
   for i:= 0 to 3 do
   begin
    Canvas.Rectangle(n,n+n*c,n*2,n*2*d);
    Canvas.Rectangle(n*3,n+n*c,n*4,n*2*d);
    Canvas.Rectangle(n*5,n+n*c,n*6,n*2*d);
    Canvas.Rectangle(n*7,n+n*c,n*8,n*2*d);
    Canvas.Rectangle(n*2,n*2*d,n*3,n*3+n*c);
    Canvas.Rectangle(n*4,n*2*d,n*5,n*3+n*c);
    Canvas.Rectangle(n*6,n*2*d,n*7,n*3+n*c);
    Canvas.Rectangle(n*8,n*2*d,n*9,n*3+n*c);
    Inc(c,2);
    Inc(d);
   end;
end;

//Создаём шахматное поле
procedure TForm1.Button1Click(Sender: TObject);
begin
    CreatePole(30);
end;
Iron Monk вне форума Ответить с цитированием
Старый 11.11.2015, 15:01   #13
JUDAS
фонатик DELPHI
Форумчанин
 
Аватар для JUDAS
 
Регистрация: 14.01.2008
Сообщений: 714
По умолчанию

Цитата:
Сообщение от Rybi Посмотреть сообщение
min@y™,Видимо, не я одна делаю их, а где вы их видели?
Помнится когда то в конце 90-х в состав TurboPascal 702 (вроде) , входил пример Chess. Компилился под DOS. Никто из знакомых не смог "завалить" 486-й комп с этой "чесс". Если интеерсно вечером с дома могу выложить (вместе с самим турбопаскалем). Где то в закромах валяется
95% сбоев и ошибок приложений, находится в полу метрах от монитора
JUDAS вне форума Ответить с цитированием
Старый 12.11.2015, 16:24   #14
Rybi
Пользователь
 
Регистрация: 27.10.2015
Сообщений: 18
По умолчанию

Огромное спасибо, но я знаю о тех шахматах, ибо перерыла весь интернет, они хорошие, но мне нужны без интеллекта и самые простые. Я все свой не могу доработать, а осталось всего шах, мат, пат, выделение хода. вот и все. а реализация ввода входа сложна, преподаватель предложил дополнить этим?!
Rybi вне форума Ответить с цитированием
Старый 12.11.2015, 16:29   #15
Rybi
Пользователь
 
Регистрация: 27.10.2015
Сообщений: 18
По умолчанию

Цитата:
Сообщение от Iron Monk Посмотреть сообщение
Код:
procedure TForm1.CreatePole(n: integer{размер клетки});
var
i,c,d:integer;
begin
    c:=0;
    d:=1;
    Canvas.Brush.Color := clBlack;
    Canvas.MoveTo(n,n);
    Canvas.LineTo(n,n*9);
    Canvas.LineTo(n*9,n*9);
    Canvas.LineTo(n*9,n);
    Canvas.LineTo(n,n);
   for i:= 0 to 3 do
   begin
    Canvas.Rectangle(n,n+n*c,n*2,n*2*d);
    Canvas.Rectangle(n*3,n+n*c,n*4,n*2*d);
    Canvas.Rectangle(n*5,n+n*c,n*6,n*2*d);
    Canvas.Rectangle(n*7,n+n*c,n*8,n*2*d);
    Canvas.Rectangle(n*2,n*2*d,n*3,n*3+n*c);
    Canvas.Rectangle(n*4,n*2*d,n*5,n*3+n*c);
    Canvas.Rectangle(n*6,n*2*d,n*7,n*3+n*c);
    Canvas.Rectangle(n*8,n*2*d,n*9,n*3+n*c);
    Inc(c,2);
    Inc(d);
   end;
end;

//Создаём шахматное поле
procedure TForm1.Button1Click(Sender: TObject);
begin
    CreatePole(30);
end;
а зачем мне само поле, оно у меня уже создано, но идея интересная сохранила, нп будущее
Rybi вне форума Ответить с цитированием
Старый 12.11.2015, 17:21   #16
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Rybi Посмотреть сообщение
Я все свой не могу доработать, а осталось всего шах, мат, пат, выделение хода.
а в чём проблема?

Цитата:
Сообщение от Rybi Посмотреть сообщение
а реализация ввода входа сложна, преподаватель предложил дополнить этим?!
простите, не понял: реализация чего? Какого "входа"?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 12.11.2015, 18:04   #17
Rybi
Пользователь
 
Регистрация: 27.10.2015
Сообщений: 18
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
а в чём проблема?


простите, не понял: реализация чего? Какого "входа"?
добавить ввод хода с клавиатуры
Rybi вне форума Ответить с цитированием
Старый 12.11.2015, 18:16   #18
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
добавить ввод хода с клавиатуры
понятно. это, в общем случае, не очень сложно.
Но, конечно, зависит от интерфейса, где Вы этот самый ход хотите ввести
можно, например, поместить обычный TEdit и под ним кнопочку "Сделать ход"
Если внесли верно - то делать ход и очищать Edit, иначе - ругаться!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 12.11.2015, 18:21   #19
Rybi
Пользователь
 
Регистрация: 27.10.2015
Сообщений: 18
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
понятно. это, в общем случае, не очень сложно.
Но, конечно, зависит от интерфейса, где Вы этот самый ход хотите ввести
можно, например, поместить обычный TEdit и под ним кнопочку "Сделать ход"
Если внесли верно - то делать ход и очищать Edit, иначе - ругаться!
вообще хотела просто через Edit, без кнопки, но ваши слова по поводу вывода сообщения о неверном ходе, изменили решение. Только не знаю, как описать, если с доски кликаем по фигуре и передвигаем, то здесь как?
ЗЫ точнее понятно как, кнопка должна проверять возможность хода и координаты клеток, но в коде выходит фигня(((
Rybi вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Алгоритм поиска лучшего хода в шахматах Foxpronet Gamedev - cоздание игр: Unity, OpenGL, DirectX 2 06.04.2014 10:44
выборка клетки в шахматах на С #Legalas Помощь студентам 6 04.04.2012 13:25
Клик через Shape Kib Общие вопросы Delphi 5 15.08.2010 01:45
Pascal цикл с Shape.Left and Shape.Top BanzoO Помощь студентам 1 13.12.2009 21:47