Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.11.2010, 20:30   #1
bookkc
Форумчанин
 
Регистрация: 16.05.2009
Сообщений: 199
По умолчанию Неработает бегущая строка

Вот программа, текст обновляется, и бегущая строка тоже обновляется нужно что- бы текст обновлялся, а бегущая строка ишла своим ходом... Помогите исправить!!!
Вложения
Тип файла: zip Programm.zip (201.1 Кб, 15 просмотров)
bookkc вне форума Ответить с цитированием
Старый 01.11.2010, 22:53   #2
Ghost of Night
Форумчанин
 
Аватар для Ghost of Night
 
Регистрация: 08.08.2010
Сообщений: 371
По умолчанию

Замени на это:

Код:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
label2.Caption:=label1.Caption;
s:=Label2.Caption;
end;

procedure TForm1.Timer2Timer(Sender: TObject);
Var
 s : String;
 i : Integer;
begin
 Label2.Caption := s;
 for i := 1 to (Length(s) - 1) do
    s[i] := Label2.Caption[i + 1];
 s[Length(s)] := Label2.Caption[1];
end;
Хакинг - не преступление, а способ выживания.
Ghost of Night вне форума Ответить с цитированием
Старый 02.11.2010, 08:15   #3
bookkc
Форумчанин
 
Регистрация: 16.05.2009
Сообщений: 199
По умолчанию

Нифига! Изначально выбивало ошибку тут
Код:
procedure TForm1.Timer1Timer(Sender: TObject);
begin
label2.Caption:=label1.Caption;
s:=Label2.Caption;
end;
Потомя тупо объявил s:string; короче программа ошибку выдает и зависает

Код:
procedure TForm1.Timer1Timer(Sender: TObject);
 var
   s: string;
begin
label2.Caption:=label1.Caption;
s:=Label2.Caption;
end;

procedure TForm1.Timer2Timer(Sender: TObject);
Var
    s: string;
 i : Integer;
begin
 Label2.Caption := s;
 for i := 1 to (Length(s) - 1) do
    s[i] := Label2.Caption[i + 1];
 s[Length(s)] := Label2.Caption[1];
end;
bookkc вне форума Ответить с цитированием
Старый 02.11.2010, 10:50   #4
Ghost of Night
Форумчанин
 
Аватар для Ghost of Night
 
Регистрация: 08.08.2010
Сообщений: 371
По умолчанию

Объяви s:string как глобальную, а во всех остальных сотри...
Хакинг - не преступление, а способ выживания.
Ghost of Night вне форума Ответить с цитированием
Старый 02.11.2010, 17:50   #5
bookkc
Форумчанин
 
Регистрация: 16.05.2009
Сообщений: 199
По умолчанию

Бегущая строка уже не бегущая, стоит на месте
bookkc вне форума Ответить с цитированием
Старый 02.11.2010, 19:38   #6
Ghost of Night
Форумчанин
 
Аватар для Ghost of Night
 
Регистрация: 08.08.2010
Сообщений: 371
По умолчанию

Отключи первый таймер.
Код:
procedure TForm1.Label1Click(Sender: TObject);
begin
Label1.Caption:=edit1.Text;
s:=Label2.Caption;
Timer1.Enabled:=true;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
label2.Caption:=label1.Caption;
Timer1.Enabled:=false;
end;

procedure TForm1.Timer2Timer(Sender: TObject);
var
 i : Integer;
begin
 Label2.Caption := s;
 for i := 1 to (Length(s) - 1) do
    s[i] := Label2.Caption[i + 1];
 s[Length(s)] := Label2.Caption[1];
end;
После запуска, быстро нажимаешь на первый Лейбл
Хакинг - не преступление, а способ выживания.

Последний раз редактировалось Ghost of Night; 02.11.2010 в 19:42.
Ghost of Night вне форума Ответить с цитированием
Старый 02.11.2010, 19:41   #7
Ghost of Night
Форумчанин
 
Аватар для Ghost of Night
 
Регистрация: 08.08.2010
Сообщений: 371
По умолчанию

Работать должно, А для большего удобства, в строке, которая должна бегать, поставь пробел в конце. И ещё можно, включать второй таймер в первом, или по нажатию на кнопку.
Хакинг - не преступление, а способ выживания.
Ghost of Night вне форума Ответить с цитированием
Старый 04.11.2010, 16:00   #8
bookkc
Форумчанин
 
Регистрация: 16.05.2009
Сообщений: 199
По умолчанию

Цитата:
Сообщение от Ghost of Night Посмотреть сообщение
Отключи первый таймер.
Код:
procedure TForm1.Label1Click(Sender: TObject);
begin
Label1.Caption:=edit1.Text;
s:=Label2.Caption;
Timer1.Enabled:=true;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
label2.Caption:=label1.Caption;
Timer1.Enabled:=false;
end;

procedure TForm1.Timer2Timer(Sender: TObject);
var
 i : Integer;
begin
 Label2.Caption := s;
 for i := 1 to (Length(s) - 1) do
    s[i] := Label2.Caption[i + 1];
 s[Length(s)] := Label2.Caption[1];
end;
После запуска, быстро нажимаешь на первый Лейбл
Программа выбивает ошибку
bookkc вне форума Ответить с цитированием
Старый 09.11.2010, 22:36   #9
Ghost of Night
Форумчанин
 
Аватар для Ghost of Night
 
Регистрация: 08.08.2010
Сообщений: 371
По умолчанию

Пробовал???
Цитата:
После запуска, быстро нажимаешь на первый Лейбл
Хакинг - не преступление, а способ выживания.
Ghost of Night вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
бегущая строка deadmer Общие вопросы C/C++ 0 29.08.2010 16:39
бегущая строка djes Паскаль, Turbo Pascal, PascalABC.NET 6 22.04.2009 21:11
Бегущая строка. blackstersl Общие вопросы Delphi 3 20.02.2009 09:43