Chciałem napisać kod sprawdzający czy litera o współrzędnych X z RichEdit jest równa literze o tych samych współrzędnych z Edit.
Wszystko działa tylko, że jest jeden problem... Przy wpisywaniu pierwszej litery w RichEdit ten ją ignoruje. Wydaje mi się, że problem tkwi w tym, że zdarzenie ustawiłem na onKeyPress i wykonywane jest ono zanim litera zostanie wpisana w RichEdit.
Cały kod wygląda tak:
var
Znak, Znak1: String;
Before: TPoint;
begin
Before := RichEdit1.CaretPos;
RichEdit1.CaretPos := Before;
RichEdit1.SelStart := RichEdit1.CaretPos.x-1;
RichEdit1.SelLength := 1;
Znak := RichEdit1.SelText;
Edit1.SelStart := RichEdit1.CaretPos.x;
Edit1.SelLength := 1;
Znak1 := Edit1.SelText;
If (Znak <> Znak1) Then
begin
RichEdit1.SelStart := Before.X;
RichEdit1.SelLength := 1;
RichEdit1.SelAttributes.Color := clRed;
end;
If (Znak = Znak1) Then
begin
RichEdit1.SelStart := Before.X;
RichEdit1.SelLength := 1;
RichEdit1.SelAttributes.Color := clGreen;
end;
RichEdit1.CaretPos := Before;
end;