Цветной текст в Edit

В 111.txt находится "2". В ListBox3: 1-я строка - "1", 2-я строка - "2", 3-я строка - "3" и т. д. до 9.
procedure TForm1.ListBox3Click(Sender: TObject);
var
 t : TStringList;
begin
 t := TStringList.Create;
 t.LoadFromFile('111.txt');
 Label1.Caption := t.Text;
 if ListBox3.Items.Strings[ListBox3.ItemIndex] = t.Text then Edit1.Font.Color := clWindow else Edit1.Font.Color := clRed;
 t.Free;
end;
По идее на клике по 2 строчке в ListBox текст не должен перекрашиваться в красный цвет, но куда не тыкай цвет все время красный. Укажите пожалуйста на ошибку. Почему условие не срабатывает?
9 ответов

Значит значение t.Text не соответствует выделенному элементу из ListBox3.


я же написал, что
В 111.txt находится "2". В ListBox3: 1-я строка - "1", 2-я строка - "2", 3-я строка - "3" и т. д. до 9.
И в коде специально гружу в Label, чтобы убедиться, что в txt находится только "2".


Так что проще: ставим точку останова в нужном месте и проверяем под отладчиком. Чудес не бывает


Проблема с txt файлом. Самое интересное в Label.caption из txt файла загружается "2". Однако эта "2", почему то отличается от "2", которая в Listbox. Почему Delphi XE4 не может правильно их сравнить?


Это не Delphi, это программист, который пишет на Delphi


а если сравнить так ListBox3.Items.Strings[ListBox3.ItemIndex][0] = t.Text[0]


а если сравнить так ListBox3.Items.Strings[ListBox3.ItemIndex][0] = t.Text[0]
А что у нас там по нулевому индексу?


Проблема с txt файлом. Самое интересное в Label.caption из txt файла загружается "2". Однако эта "2", почему то отличается от "2", которая в Listbox. Почему Delphi XE4 не может правильно их сравнить?
Предлагаю попробовать так:
t := TStringList.Create;
 t.LoadFromFile('111.txt');
 Label1.Caption := '';
 for i:=1 to Length(t.Text) do Label1.Caption := Label1.Caption+IntToHex(Ord(t.Text[i]),2);
Увидите своими глазами что там есть кроме двойки.


а тут с 1 ? от эти строки паскалевские