Страница 2 из 2
Добавлено: 29 окт 2006, 00:08
Svoja4ok
Игорь Акопян, слушай, блин... у меня в делфях хелп урезаный... можешь, пожалуйста, привести примерчик смены значения лабел1 по нажатию кнопки1? соответсвенно из файла...
Добавлено: 29 окт 2006, 01:53
Naeel Maqsudov
Svoja4ok,
1. Установите себе нормальную систему с хелпом! Это обязательно.
2. В данном случае хелп ни при чем - все элементарно. Пусть P - это переменная, StringList1 - это список с загруженными в него строками.
В обработчике кнопки пишем всего 2 строки:
Label1.Caption:=StringList1.Strings[P];
P:=(P+1) mod StringList1.Count;
Переменнная P будет меняться "по кругу" вперед, возвращаясь к нулевой строке после прохождения последней.
Добавлено: 29 окт 2006, 02:13
Игорь Акопян
У меня на этой машине нет дельфей...
У TStringList должен быть метод LoadFromFile, с его помощью читаем из файла строки. Далее что-то типа
Код: Выделить всё
procedure NextStringButton(Sender: TObject);
begin
Inc(iStrNum);
MyLabel.Caption := MyStringList[iStrNum];
end;
procedure PrevStringButton(Sender: TObject);
begin
Dec(iStrNum);
MyLabel.Caption := MyStringList[iStrNum];
end;
упс... долго читал

Добавлено: 29 окт 2006, 02:27
Naeel Maqsudov
Ага
Деление по модулю - это старый - "с бородой" - прием. Не забывайте его.
(P-1) mod StringList1.Count;
естественно работает тоже по кругу, только назад.
Добавлено: 29 окт 2006, 12:02
Игорь Акопян
Naeel Maqsudov, не спорю, отличный приём, когда
надо закруглить обход
