Привіт, чи можна зробити так, щоб рядки з молодшим індексом в 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