![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
16-ричный код палитры цветов ТColorDialog [D7, XP]
lewka © (2008-07-07 18:44:00)Подскажите пожалуйста почему когда я получаю 16-ричный код цвета из ТColorDialog вот таким способом:
procedure TForm1.Button3Click(Sender: TObject);
begin
if ColorDialog1.Execute then
memo1.SelText:='#'+Inttohex(ColorDialog1.Color,6)
end;
то он получается с точностью наоборот? Т.е. если выбираю желтый, у которого код FFFF00, то получаю цвет 00FFFF - Aqua, синий - 0000FF, получаю FF0000
palva (2008-07-07 19:47:00) [1]Если это reverse строки, то идея хорошая, только в делфи нет операторов типа foreach Нужно использовать обычный цикл со счетчиком.
Отдельный вопрос - зачем вам нужен reverse строки.
lewka (2008-07-07 19:38:00) [2]А вот такой код:
procedure TForm1.Button1Click(Sender: TObject);
var sim:char;
begin
Caption:='';
For sim in edit1.Text DO
Caption:=sim+Caption;
end;
Но я не знаю почему он не работает. Подскажите что не так в нем
palva (2008-07-07 19:11:00) [3]
> А есть какая-нибудь функция переворота строки наоборот?
Интересная идея. А потом еще перевернуть каждую пару символов. Надо бы эту задачу предложить на олимпиаду.
Такая функция вообще-то есть. Но зачем она вам, вам что приключений не хватает.
lewka (2008-07-07 19:06:00) [4]А есть какая-нибудь функция переворота строки наоборот?
McSimm (2008-07-07 18:58:00) [5]Можно обработать строку после вашего IntToHex (строковые функции)
Можно обработать байты каждого цвета полученного от диалога целого значения (двоичная арифметика) или получить эти байты функциями GetRValue, после чего байты привести к 16ному отображению.
lewka (2008-07-07 18:54:00) [6]Вы правы относительно HTML. А как мне инвертировать этот код?
McSimm (2008-07-07 18:50:00) [7]Наоборот относительно кодов цвета в HTML? (телепатор подсказывает :)
Так они не при чем к кодированию цвета в Windows