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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.03.2011, 09:36   #1
Kingcss
Пользователь
 
Регистрация: 28.12.2010
Сообщений: 13
По умолчанию Обращение к константе

Вообщем у меня забиты константы с координатами:
Код:
x1=15;
y1=15;
x2=50;
y2=15;
и.т.д
по этим координатам мне нужно рисовать фигуры:
Код:
Image1.Canvas.Rectangle(Bounds(n,m,25,25));
у меня рандомно генерируется число константы , тоесть если сгенерировалось 2 то обращаемся к константе x2,y2 если сгенерировалось 5 то к константе x5 и y5, как мне это реализовать, пробывал
Код:
n:='x'+inttostr(a);
m:='y'+inttostr(a);
но там ругается что типы неправильные...
Kingcss вне форума Ответить с цитированием
Старый 02.03.2011, 09:46   #2
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Код:
const
  x: array[1..2] of Integer = (15, 20);
  y: array[1..2] of Integer = (15, 15);
...
  n := x[a];
  m := y[a];
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 02.03.2011, 09:51   #3
Kingcss
Пользователь
 
Регистрация: 28.12.2010
Сообщений: 13
По умолчанию

спс за совет, но такой способ мне врятли подойдет, т.к. у меня где-то 200 констант y и 200 констант x и вбивать их в массив очень долго.
Kingcss вне форума Ответить с цитированием
Старый 02.03.2011, 09:51   #4
MaxNik2009
Форумчанин
 
Аватар для MaxNik2009
 
Регистрация: 17.09.2009
Сообщений: 294
По умолчанию

создай двумерный массив, заполни его координатами, и потом можешь обращаться к элементам массива для получения координат:
Код:
procedure TForm2.BitBtn1Click(Sender: TObject);
const
  aCoord: array [0 .. 5, 0 .. 1] of integer = (
    (10, 10),
    (15, 2),
    (0, 0),
    (15, 36),
    (26, 21),
    (8, 8)
    );

var
  J: integer;

begin
  randomize;
  J:= Random(5) - 1;
  Canvas.Rectangle(aCoord[J, 0], aCoord[J, 1], aCoord[J, 0] + 25,
    aCoord[J, 1] + 25);
end;
принимаю благодарности в письменном виде( весы слева)...
MaxNik2009 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обращение к css Ruska882009 HTML и CSS 2 11.04.2009 09:11
Обращение к URL Andryves Помощь студентам 3 30.10.2008 12:12
Обращение Акашаев Нурлан Общие вопросы Delphi 5 26.06.2008 16:02