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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 29.10.2012, 03:21   #1
dpmkh
Пользователь
 
Регистрация: 12.10.2012
Сообщений: 11
По умолчанию Паскаль и делфи

ПОдскажите можно ли в делфи цвету присвоить номер, что бы я мог использовать цвета в цикле и т.п.? Как это было в паскале. Например:

cvet:=1;
cvetnew:=cvet+1;

Заранее спасибо!
dpmkh вне форума Ответить с цитированием
Старый 29.10.2012, 03:28   #2
Delphi_ProGer
Форумчанин
 
Регистрация: 30.10.2010
Сообщений: 524
По умолчанию

Цитата:
cvet:=1;
cvetnew:=cvet+1;
Тоесть вы спрашиваете правильно ли так? оО Что-то я вас не понял...
Delphi_ProGer вне форума Ответить с цитированием
Старый 29.10.2012, 06:02   #3
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Если под цветом подразумевается TColor то он объявлен так:
Код:
TColor = -$7FFFFFFF-1..$7FFFFFFF;
т.е. можно считать что Integer (на большинстве платформ, но на 64битных надо проверять)
В справке написано то же самое.
В общем, учитесь самостоятельно искать информацию, тем более для этого всего пару кнопок в самой дельфи нажать надо.

Следовательно, использовать число как цвет можно легко.
phomm вне форума Ответить с цитированием
Старый 29.10.2012, 14:45   #4
dpmkh
Пользователь
 
Регистрация: 12.10.2012
Сообщений: 11
По умолчанию

Код:
PROCEDURE ELEM (x01,x02,x03,y01,y02,y03,Mas:EXTENDED;
                  j,jmax,jmin,cvet,t:WORD);
    TYPE
      Triangle = ARRAY[1..3] OF TPoint;
    VAR
      X2,Y2,px,py                     : WORD;
      Triag                                            : Triangle;
  BEGIN //Pr
  with Form1.Image1.Canvas do begin
      if  Odd(cvet)=true  then  cvet := 1  else  cvet := 15;

   Px:= Form1.Image1.Width; Py:= Form1.Image1.Height;
   X2:=round(Px/10); Y2:=round(Py/12*10-5);

    Pen.Color:=cvet;

    Brush.Color:=cvet;
    Brush.Style:=bsSolid;
   WITH Triag [1] DO BEGIN
    X:= round(X2+x01/Mas+1);
    Y:= round(Y2-y01/Mas-1);
   END;
   WITH Triag [2] DO BEGIN
    X:= round(X2+x02/Mas+1);
    Y:= round(Y2-y02/Mas-1);
   END;
   WITH Triag [3] DO BEGIN
    X:= round(X2+x03/Mas+1);
    Y:= round(Y2-y03/Mas-1);
   END;
   Polygon(Triag);
   END;
  END; //Pr



Вот сам код, который был написан в паскале, он был испрвлен под делфи, но с цветами не знаю что делать.
dpmkh вне форума Ответить с цитированием
Старый 29.10.2012, 14:53   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

вот заготовочка:

Код:
const
  MaxColors = 16;
  aColors : array[0..MaxColors-1] of TColor =
            (clWhite,clBlack,clSilver,clGray,
             clRed,clMaroon,clYellow,clOlive,
             clLime,clGreen,clAqua,clTeal,
             clBlue,clNavy,clFuchsia,clPurple);
....
var
   cvet : integer;

на событии Form1 OnCreate:
begin
 cvet := -1;
end;

в вашей процедуре:
if cvet < (MaxColors-1) then Inc(cvet) else cvet := 0;

  Pen.Color:=aColors[cvet];

  Brush.Color:=aColors[cvet];
идея, надеюсь, понятна?
Serge_Bliznykov вне форума Ответить с цитированием
Старый 30.10.2012, 14:26   #6
dpmkh
Пользователь
 
Регистрация: 12.10.2012
Сообщений: 11
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
То что нада большое спасибо!!! надеюсь сейчас смогу сделать это)
dpmkh вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паскаль -> Делфи PersonUnknown Общие вопросы Delphi 13 21.02.2012 20:28
Делфи или паскаль МАРА90 Помощь студентам 1 09.12.2010 21:47
Паскаль и Делфи laluna Помощь студентам 1 08.09.2010 16:32
Паскаль в Делфи... Vremya-Dengy Общие вопросы Delphi 15 26.01.2009 04:32
Делфи или Паскаль LLIypLLIyH Помощь студентам 9 28.05.2008 18:22