![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Использование компонент в функциях [D6, D7, D2005]
Виталий___ © (2006-02-05 21:35:00)Я написал вручную отдельную функцию сразу после значка {$R *.dfm}. Из процедур функция вызывается нормально.
Функция начинается так: Function AvCycle :Real;
Но у меня не получается использовать компоненты в этой функции.
Например if Label1.text='' then ..... пришет, что undeclared ....
с процедурами тоже самое. Помогите, если кто знает где объявлять. везде перепробывал - никак:(
YurikGL (2006-02-06 22:58:00) [1]
> Нет, этот ответ не есть правильный, точнее, следовать этому
> ответу не есть правильно.
Это еще почему? Как частное решение.... и вообще, зависит от контекста...
Джо (2006-02-05 23:42:00) [2]> [12] Виталий___ (05.02.06 23:16)
> правильный ответ: if Form1.Label1.text='xx'
Нет, этот ответ не есть правильный, точнее, следовать этому ответу не есть правильно.
Виталий___ (2006-02-05 23:16:00) [3]и всем, кто откликнулся тоже спасибо.
правильный ответ: if Form1.Label1.text='xx'
а вызывается как обычно, без параметров.
Джо (2006-02-05 23:12:00) [4]> Спасибо! Всё теперь заработало.
Это только так кажется.
Виталий___ (2006-02-05 23:11:00) [5]
> YurikGL
Спасибо! Всё теперь заработало.
Джо (2006-02-05 23:10:00) [6]> [7] YurikGL © (05.02.06 23:04)
> Попробуй
Не нужно это пробовать, так вообще не нужно :)
YurikGL (2006-02-05 23:06:00) [7]
> а как теперь эту функцию вызвать?
s:=Av(label1);
YurikGL (2006-02-05 23:04:00) [8]
> Function Av :Real;
> var j,i:integer;
> begin
> i:=1;
> j:=2;
> if Label1.text='xx' Then Av:=j+i
> else Av:=0;
> end;
Попробуй
Function Av :Real;
var j,i:integer;
begin
i:=1;
j:=2;
if Form1.Label1.text='xx' Then Av:=j+i
else Av:=0;
end;
Джо (2006-02-05 22:39:00) [9]> [5] Виталий___ (05.02.06 22:11)
> а как теперь эту функцию вызвать?
Вызывать ее с фактическим параметром того типа, который задан в объявлении функции.
Виталий___ (2006-02-05 22:11:00) [10]а как теперь эту функцию вызвать?
если вызывать так:
s:=Av;
пишет Not Enough Actual Parametr.
Джо (2006-02-05 21:54:00) [11]
Function Av (Label: TLabel) :Real;
var j,i:integer;
begin
i:=1;
j:=2;
if Label.text='xx' Then
Av:=j+i
else Av:=0;
end;
Reindeer Moss Eater (2006-02-05 21:54:00) [12]Function Av(Label1 : TLabel) : Real;
Виталий___ (2006-02-05 21:52:00) [13]код примерно такой:
Function Av :Real;
var j,i:integer;
begin
i:=1;
j:=2;
if Label1.text='xx' Then Av:=j+i
else Av:=0;
end;
Как сделать, чтобы работало с Label1? без Label1 работает.
YurikGL (2006-02-05 21:37:00) [14]Компоненты в функции?
1) Что нужно в целом?
2) Давайте более полный код... как объявляете и как пытаетесь использовать....