![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Создаю собственную процедуру, в ней имеются строки:
Poisk_In_File:=TEdit('Edit'+IntToStr(Tek_Page)+Poi sk_True[2]).Text; TEdit(FindComponent('Edit'+IntTostr(Tek)+IntToStr( z))).Text:=E_Stroka; Прикомпиляции ошибок нет, но при запуске возникает ошибки ссылающиеся на эти строки. Если внести эти строки, напрамер, в нутрь procedure TForm1.FormCreate(Sender: TObject); или procedure TForm1.Button1Click(Sender: TObject); то все нормально. Я так понял, что-то я не правильно определяю процедуру.... Подскажите плиз.... |
|
#2
|
||||
|
||||
|
Если можешь, покажи всю процедуру.
|
|
#3
|
|||
|
|||
|
Код:
ROCEDURE FILLING_COMBOBOX_FILE(Tek_Page: integer);
Var
Poisk_True, Poisk_In_File, S, Iskom_Str: string;
F: TextFile;
BEGIN
for i:=1 to PG[Tek_Page].ComboBox_Count do
Begin
Poisk_True:=PG[Tek_Page].Info_ComboBox[i].Poisk;
If Poisk_True[1]='E' then
Begin//If
AssignFile(F, PG[Tek_Page].Info_ComboBox[i].TextFile);
Reset(F);
Readln(F, S);
Poisk_In_File:='W510';
// Poisk_In_File:=TEdit('Edit'+IntToStr(Tek_Page)+Poisk_True[2]).Text;
Form1.Edit1.Text:=TEdit('Edit'+IntToStr(Tek_Page)+Poisk_True[2]).Text;
if Pos(Poisk_In_File,S)<>0 then
Begin
for j:=Length('W510') to Length(S) do
begin
If s[j]<>' ' then Iskom_Str:=Iskom_Str+s[j]
Else
begin
If Length(Iskom_Str)>0 then Form1.Edit1.Text:=Form1.Edit1.Text+IntToStr(8)
Else Iskom_Str:='';
end;
end;
End;
CloseFile(F);
End;//If
End;
//TComboBox('ComboBox'+IntToStr(Tek)+).Text:='';
END; |
|
#4
|
||||
|
||||
|
А куда ты ее написал?
|
|
#5
|
|||
|
|||
|
После
implementation Если я правильно вопрос понял Вызывается после нажатия кнопки |
|
#6
|
||||
|
||||
|
Не совсем понял
|
|
#7
|
||||
|
||||
|
Цитата:
Код:
Poisk_In_File:=TEdit('Edit'+IntToStr(Tek_Page)+Poi sk_True[2]).Text;строкой нельзя манипулировать как Эдитом. Код:
TEdit(FindComponent('Edit'+IntTostr(Tek)+IntToStr(z))).Text:=E_Stroka; |
|
#8
|
|||
|
|||
|
В общем как сделать так, чтобы при нажатии кнопки не вылазила ошибка, т.е. что-то я не правильно определяю....
На форме Edit1, остальные Edit'ы создаются динамически. Код:
implementation
uses Unit2;
......
функции
......
PROCEDURE FILLING_COMBOBOX_FILE;
Begin
Form1.Edit1.Text:='1'; //Работает
TEdit('Edit'+IntToStr(1)+IntToStr(1)).Text:='1';//Компилируется, но при выполнении выдается ошибка
End;
.....
procedure TForm1.Button2Click(Sender: TObject);
begin
PROCEDURE FILLING_COMBOBOX_FILE;
end;
.... |
|
#9
|
||||
|
||||
|
Код:
implementation
uses Unit2;
......
функции
.....
procedure TForm1.Button2Click(Sender: TObject);
PROCEDURE FILLING_COMBOBOX_FILE;
Begin
Form1.Edit1.Text:='1'; //Работает
TEdit(FindComponent('Edit'+IntToStr(1)+IntToStr(1))).Text:='1';//Компилируется, но при выполнении выдается ошибка
End;
begin
PROCEDURE FILLING_COMBOBOX_FILE;
end;
....Последний раз редактировалось The Shadow, 01.04.2008 в 13:20. |
|
#10
|
||||
|
||||
|
Код:
TEdit('Edit'+IntToStr(1)+IntToStr(1)).Text:='1'; Код:
TEdit('Edit11').Text:='1'; TEdit(var) - не ищет компонент по имени а пытается с памятью переменной работать как с TEdit |
|
#11
|
|||
|
|||
|
Если сделать так, то все нормально
Код:
implementation
uses Unit2;
......
функции
......
procedure TForm1.Button2Click(Sender: TObject);
begin
TEdit('Edit'+IntToStr(1)+IntToStr(1)).Text:='1';//
end; |
|
#12
|
||||
|
||||
|
Не может быть. Как ты String в TEdit переводишь?
|
|
#13
|
|||
|
|||
|
Ошибся, т.е. IntToStr(1);
|
|
#14
|
||||
|
||||
|
Я не про то. Надо
Код:
TEdit(FindComponent('Edit'+IntToStr(1)+IntToStr(1))).Text:='1'; |
|
#15
|
|||
|
|||
|
Если пишу TEdit(FindComponent('Edit'+IntToStr(1)+IntToStr(1) )).Text:='1';
Т.е. использую FindComponent, при компиляции ошибка - [Error] Unit1.pas(116): Udeclared identifier: 'Find Component' Это происходит когда этот код находится в моей процедуре, а если в "стандартных", типа procedure TForm1.FormCreate(Sender: TObject); или procedure TForm1.Button2Click(Sender: TObject); то все нормально работает... |