![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
![]() Kак сделать этот код глобальной процедурой
Код:
var sum2:real; begin sum2:=0; adotable3.Active:=true; adotable3.First; while ADOTable3.Eof <>true do begin sum2:=sum2+ADOTable3pribol.Asfloat; ADOTable3.Next; end; LABEL3.Caption:=floattostr(sum2); adotable3.Active:=false; end; Нет ничего не возможного. Вопрос только во времени... |
#2
|
|||
|
|||
![]() Сделать процедуру и передать в нее все объекты, к которым она должна иметь доступ. Или адресаоваться внутри глобальной процедуры через глобальные ссылки на соотв. формы (будет работать, если у тебя формы создаются автоматически, при динамическом создании скорее всего работать этот способ не будет).
|
#3
|
||||
|
||||
![]() Код:
procedure calculate; var sum2:real; ADOtable3: tADOtable; label3:tlabel; adotable3pribol: TFloatField; begin sum2:=0; adotable3.Active:=true; adotable3.First; while ADOTable3.Eof <>true do begin sum2:=sum2+ADOTable3pribol.Asfloat; ADOTable3.Next; end; LABEL3.Caption:=floattostr(sum2); adotable3.Active:=false; end; Код:
procedure TForm1.Button1Click(Sender: TObject); begin calculate; end; Код:
[DCC Warning] Unit1.pas(155): W1036 Variable 'ADOtable3' might not have been initialized [DCC Warning] Unit1.pas(159): W1036 Variable 'adotable3pribol' might not have been initialized [DCC Warning] Unit1.pas(162): W1036 Variable 'label3' might not have been initialized При вызове выдает ошибку...можете сказать что я делаю не правильно и как будет правильнее?? Нет ничего не возможного. Вопрос только во времени... |
#4
|
|||
|
|||
![]() Как-то так:
Код:
procedure calculate(ADOtable3: tADOtable; label3:tlabel); var sum2:real; begin sum2:=0; adotable3.Active:=true; adotable3.First; while ADOTable3.Eof <>true do begin sum2:=sum2+ADOTable3.fieldByName('pribol').Asfloat; ADOTable3.Next; end; LABEL3.Caption:=floattostr(sum2); adotable3.Active:=false; end; или же как у тебя, но тогда надо создать соотв. компоненты в коде, установить соединение и т.д. ЗЫ. вроде не новичек, а элементарных вещей не знаешь... странно. |
#5
|
||||
|
||||
![]() Благодаря вам Я и научился программировать!
то что ты написал я уже пробовал - но потом этот код вызвать просто так begin calculate; end; не получиться... по этому я вставил тот код который не может включить ADOTABLE Нет ничего не возможного. Вопрос только во времени... Последний раз редактировалось Electronic_Arts, 26.10.2010 в 20:25. |
#6
|
||||
|
||||
![]() ой ссори - не обратил внимания всё разобрался .........спасибо тебе lmikle
Код:
begin calculate(ADOTable3, LABEL3); end; Нет ничего не возможного. Вопрос только во времени... |