Windows 7'de, bir metin denetimi (TMemo
), metnin girilmesinden sonra otomatik olarak kayar (Memo.Lines.Add(Path);
).Bir Memo kontrolünün otomatik kaydırılması nasıl durdurulur?
Otomatik kaydırmayı nasıl durdurabilirim?
Windows 7'de, bir metin denetimi (TMemo
), metnin girilmesinden sonra otomatik olarak kayar (Memo.Lines.Add(Path);
).Bir Memo kontrolünün otomatik kaydırılması nasıl durdurulur?
Otomatik kaydırmayı nasıl durdurabilirim?
Normal olarak, bir not kontrolüne metin eklemek, notu eklenen metnin altına kaydırır. Metin eklemeden önce Lines.BeginUpdate
diyoruz, bunu önlemek ve sonrasında EndUpdate
çağırmak için:
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.BeginUpdate;
try
Memo1.Lines.Add('...');
Memo1.Lines.Add('...');
...
finally
Memo1.Lines.EndUpdate;
end;
end;
Bu işlevler, ancak titremenin istenmeyen yan etkisine sahiptir :-(DoubleBuffered özelliğinin ayarlanmasının faydası yoktur. – truthseeker
Bunun neden çalıştığını açıklayabilir misiniz? "System.Classes.TStrings.BeginUpdate" belgesinde "Bazı torunları TStrings, güncellemeleri tamamlandığında, bir denetimin kontrol edilmesini anlatmak gibi belirli eylemleri gerçekleştirmek için bu bilgileri kullanır. " – DBedrenko
@New Çünkü" TMemoStrings.SetUpdateState "olduğu gibi uygulanır. – NGLN
zaman not kaydırır otomatik? Veri eklendiğinde – jachguate
. kod: lstFiles.Lines.Add (Yol); lstFiles TMemo'dur. – HamiD