2015-04-22 2 views
0

Я использую Delphi XE сегодня (один из четырех вариантов я играю с :)Delphi XE - SynMemo - выделить строку и остановить курсор туда, где вы щелкаете его

Я установил SynEdit/SynMemo заменить стандартный TMemo.

(a) Я хочу выделить целую линию на основе ее номера строки. (b) Когда я нажимаю на первую строку, я хочу, чтобы каретка переходила к началу строки, не появляясь там, где я нажимаю - больше как блокнот, чем редактор кода.

Любая помощь очень ценится!

ответ

2

Чтобы выделить конкретную строку, вам необходимо использовать событие OnSpecialLineColors.

Попробуйте этот код:

procedure TfrmMain.SynMemo1SQLSpecialLineColors(Sender: TObject; Line: Integer; 
    var Special: Boolean; var FG, BG: TColor); 
begin 
    // Change highlight for the first line. 
    if Line = 1 then 
    begin 
    BG := clBlack; 
    FG := clGreen; 
    end; 
end; 

Кроме того, убедитесь, что Highlighter свойство не установлено, в противном случае он может переопределить подсветку.

Смежные вопросы