Nie wiem jak podświetlić kolor wybranej przeze mnie lini w synedit. Przeczesałem forum 4p i nie widze rozwiązania tego problemu.
Z góry dzieki za pomoc
Michał
Nie wiem jak podświetlić kolor wybranej przeze mnie lini w synedit. Przeczesałem forum 4p i nie widze rozwiązania tego problemu.
Z góry dzieki za pomoc
Michał
A czy w demach nie było przypadkiem czegoś takiego? (Jak nie, to nie bić, bo nie jestem pewien :P)
A czy w demach nie było przypadkiem czegoś takiego? (Jak nie, to nie bić, bo nie jestem pewien :P)
Jest coś takiego w Domo wersjach a dokładniej w folderze D4Demo
Niestety akurat ten przykład mi się nie kompiluje (SynExporterHTML1.HTMLFontSize: property HTMLFontSize does not exist :( ) A analiza kodu z plików pas niewiele mi mówi (jestem początkujący w delphi) Czy mógłby ktoś podać jakiś gotowy przykład, albo przynajmniej powiedzcie mi jakiego hasła szukać na googlu
Pozdrawiam Michał
ehh, posiedziałem nad tymi żródłami i chyba znalazłem:
procedure TForm1.SpeedButton1Click(Sender: TObject);
var
p: TBufferCoord;
Mark: TSynEditMark;
i: boolean;
begin
with SynEditor do begin
p := CaretXY;
// ShowMessage(IntToStr(p.char));
Marks.ClearLine(p.Line);
if (Sender as TSpeedButton).Down then begin
Mark := TSynEditMark.Create(SynEditor);
with Mark do begin
Line := p.Line;
Char := p.Char;
ImageIndex := (Sender as TSpeedButton).Tag;
Visible := TRUE;
InternalImage := BookMarkOptions.BookMarkImages = nil;
end;
Marks.Place(Mark);
end;
end;
end;
problem w tym że to nie chce działać :(. Wydawało mi sie że powinno zaznaczać linie w której jest kursor (p.line) ale tak nie jest. Ktoś wie co trzeba zrobić żeby działało?
Michał
Ja to mam tak:
procedure TFormMain.EditorSpecialLineColors(Sender: TObject; Line: Integer;
var Special: Boolean; var FG, BG: TColor);
begin
BG := clRed;
FG := clWhite;
if Line = ErrorLine then begin
Special := True;
end;
end;
Gdzie ErrorLine jest linia do podkreslenia
A wykorzystuje to tak:
procedure SelectLine(RE: TSynEdit; const Line: Integer);
begin
FormMain.ErrorLine := Line;
RE.Invalidate;
if (Line > 0) and (RE.CaretY <> Line) then RE.CaretY := Line;
RE.InvalidateLine(Line);
RE.SetFocus;
end;
Wiec proscizna ;)
za tępy jestem, nie potrafie tego zrobić, może ktoś wysłać przykładowe źródła jak to ma wyglądać na ours86@o2.pl ?