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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.01.2008, 22:13   #1
Dura4ok
Подтвердите свой е-майл
 
Регистрация: 06.05.2007
Сообщений: 5
Вопрос Вызывание процедуры в другой процедуре

Есть процедура таймер, которая раз в 1сек/n (пусть раз в секунду, не принципиально) двигает Шейп1 на 20 точек вправо.
И есть процедура Кнопка1 (просто лень менять раскладку).
Собственно ВОПРОС: как включать процедуру таймера по нажатию кнопки?
И более обще, КАК в одной процедуре вызывать другую?
Помогите, товарищи!!!
Dura4ok вне форума Ответить с цитированием
Старый 21.01.2008, 22:17   #2
Stanislav
Квадрокоптерист
Участник клуба Подтвердите свой е-майл
 
Регистрация: 29.09.2007
Сообщений: 1,824
По умолчанию

Цитата:
Сообщение от Dura4ok Посмотреть сообщение
Есть процедура таймер, которая раз в 1сек/n (пусть раз в секунду, не принципиально) двигает Шейп1 на 20 точек вправо.
И есть процедура Кнопка1 (просто лень менять раскладку).
Собственно ВОПРОС: как включать процедуру таймера по нажатию кнопки?
И более обще, КАК в одной процедуре вызывать другую?
Помогите, товарищи!!!
По нажатию кнопки
timer1.enable:=true; // Включить
timer1.enable:=false; // Выключить

А вот насчет процедуры просто береш и вызываешь тупой бональный пример:

procedure shar2;
var
b:integer;
begin
b:=b+1;
end;


procedure shar;
var
i:integer;
begin
i:=i+1;
shar2; // Вот сдесь мы вызвали другую процедуру из второй т.е соответствует твоему вопросу

end;

Может я конечно что-то не допонял всем свойственно ошибаться.
Я часть той силы, что вечно хочет зла, но вечно совершает благо..

Последний раз редактировалось Stanislav; 21.01.2008 в 22:21.
Stanislav вне форума Ответить с цитированием
Старый 21.01.2008, 22:20   #3
Dura4ok
Подтвердите свой е-майл
 
Регистрация: 06.05.2007
Сообщений: 5
По умолчанию

А если в VCL application?
пишет not enough actual parameters
Dura4ok вне форума Ответить с цитированием
Старый 21.01.2008, 22:40   #4
Никки
Форумчанин Подтвердите свой е-майл
 
Аватар для Никки
 
Регистрация: 20.11.2007
Сообщений: 500
По умолчанию

а покажи код
Никки вне форума Ответить с цитированием
Старый 22.01.2008, 00:56   #5
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Пример (если я правильно понял):
Код:
unit TmpUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls, MPlayer, ShellApi;

type
  TForm1 = class(TForm)
    Timer1: TTimer;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure Go_and_Go;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
Timer1.Enabled:=True;
Go_and_Go;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
Timer1.Enabled:=False;
end;

procedure TForm1.Go_and_Go;
begin
//   тут что-то делаем...
end;

end.
mihali4 вне форума Ответить с цитированием
Старый 22.01.2008, 01:04   #6
Sergey2
Форумчанин
 
Регистрация: 08.01.2008
Сообщений: 233
По умолчанию

Цитата:
Сообщение от Dura4ok Посмотреть сообщение
А если в VCL application?
пишет not enough actual parameters
procedure TForm1.BitBtn1Click(Sender: TObject);
begin

Timer1Timer(Sender);

end;
Sergey2 вне форума Ответить с цитированием
Старый 22.01.2008, 08:19   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Timer1Timer(Sender);
Это не включение таймера, а вызов его обработчика.
Читай ВНИМАТЕЛЬНО посты №2 и №5!
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.01.2008, 19:45   #8
Sergey2
Форумчанин
 
Регистрация: 08.01.2008
Сообщений: 233
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Это не включение таймера, а вызов его обработчика.
Ну да. Я вопрос автора именно так и понял. И показал заодно как вызывать другие процедуры из процедуры.
Цитата:
Читай ВНИМАТЕЛЬНО посты №2 и №5!
А че их читать? Их не автор писал
Sergey2 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как реализовать процедуру в процедуре? Аlex Помощь студентам 11 14.07.2008 10:14
Переход к другой процедуре Detka Общие вопросы Delphi 7 13.07.2008 16:50
Вопрос по процедуре VenMaster Общие вопросы Delphi 5 13.06.2008 17:37
Ошибка в процедуре GAGARIN-NEW Помощь студентам 2 21.12.2007 09:23