В Windows 7 элемент управления заметками (TMemo
) будет автоматически прокручиваться после вставки текста (Memo.Lines.Add(Path);
), чего я не хочу, потому что прокрутка выполняется мной.
Как остановить автоматическую прокрутку?
В Windows 7 элемент управления заметками (TMemo
) будет автоматически прокручиваться после вставки текста (Memo.Lines.Add(Path);
), чего я не хочу, потому что прокрутка выполняется мной.
Как остановить автоматическую прокрутку?
Обычно при добавлении текста в элемент управления заметкой заметка прокручивается до конца вставленного текста. Чтобы предотвратить это, вызовите Lines.BeginUpdate
перед добавлением текста, а затем вызовите EndUpdate
:
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.BeginUpdate;
try
Memo1.Lines.Add('...');
Memo1.Lines.Add('...');
...
finally
Memo1.Lines.EndUpdate;
end;
end;
System.Classes.TStrings.BeginUpdate
говорится, что некоторые потомки TStrings используют эту информацию для выполнения определенных действий, таких как указание элементу управления перерисовывать, когда обновления завершены.
- person DBedrenko; 29.07.2015
TMemoStrings.SetUpdateState
реализовано так, как есть.
- person NGLN; 09.08.2015