Зворотній нумерація рядків в memo

Привіт, чи можна зробити так, щоб рядки з молодшим індексом в memo були в низу.

Але що заважає заповнити MEMO в зворотному порядку проходження рядків і звертатися надалі до цих рядків через свою спеціальну ф-цію?

function MyGetStringFromMemo (Memo: TMemo; Index: Integer): String;
begin
# XA0; with Memo do
# XA0; Result: = Lines [Prev (Lines.Count) - Index];
end;

У програмі memo використовується як форма для виведення тексту, і знаходиться в самому низу екрану, виставлена ​​по першому рядку. Якщо memo буде заповнюватися зверху вниз, то новий текст просто не буде видно.

> tickler # XA0; (26.04.06 13:11) [2]

> Новий текст просто не буде видно.

Додавайте рядки як зазвичай, але після кожного додавання прокручивайте текст до кінця, ось і все питання.

Взагалі, це потрібно для програми показу субтитрів, щоб Саби були завжди внизу екрану.

1. Поправ посилання.
2. Зворотне проходження рядків в Memo - звичайне рішення?

При зворотному нумерації рядків? Це як же воно так вийде?

Елементарно, Юрій. якщо нові рядки вставляти інсерти в нульову рядок.

Ось мемо зі зворотним нумерацією:

Ось наприклад уривок з субтитрів:

Здрастуйте
Мене звати
Вася

В результаті отримуємо:

> tickler # XA0; (26.04.06 14:40) [7]

Це мрії. А реалії такі, що стандартний Memo буде показувати рядки в порядку їх нумерації в Lines, і ніяк інакше. В якому порядку і куди саме Ви їх будете туди вставляти - це справа хазяйська, але відображатимуться вони будуть все одно в порядку нумерації. Тобто, після вставки 3-х рядків інсерти в нульову рядок отримаємо:

Пам'ять: 0.73 MB
Час: 0.072 c