![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
![]() Код:
procedure TForm2.Button1Click(Sender: TObject); var i:Integer; begin if ColorDialog1.Execute then begin Button1.Font.Color:=mas2[(Sender as TButton).Tag].Brush.Color; // сохраняем цвет (здесь просто в шрифте кнопки) mas2[(Sender as TButton).Tag].Brush.Color:=ColorDialog1.Color; // присваиваем цвет из диалога for i:=0 to b do begin if ((Sender as TButton).Tag<>i) and (mas2[(Sender as TButton).Tag].Brush.Color=mas [i].Brush.Color)then // если элемент массива не i-й и цвет тот же что и и выбран в в диалоге, то выдаём сообщение и возвращаем старый цвет, b- номер последнего элемента в массиве begin ShowMessage('Данный цвет уже выбран!'); mas2[(Sender as TButton).Tag].Brush.Color:=Button1.Font.Color; end; end; end; end; ![]() Последний раз редактировалось vbh99, 17.04.2011 в 13:41. |
#2
|
||||
|
||||
![]() мне кажется,что на этот вопрос будет не ответ, а вопрос...
Я прочитал несколько раз это, но так и не вкурил в чем проблема. Может быть я просто пьян ![]() |
#3
|
|||
|
|||
![]() Цитата:
![]() Проблема в чём: код, который приведён выше, срабатывает, например, на чисто белом, чисто чёрном, чисто красном и т.д., но если взять, например, цвет RGB(64, 0, 64) или RGB(255, 128, 128), то эти повторяющиеся цвета он пропускает т.е. не выдаёт сообщение. Последний раз редактировалось vbh99, 17.04.2011 в 13:44. |