|
Вопрос # 4 976/ вопрос открыт / |
|
Приветствую, уважаемые эксперты!
Почему то в Labelы на 5 форме не выводятся строчки из файла
Приложение: Переключить в обычный режим- procedure TForm1.Button2Click(Sender: TObject);
- var F:TextFile; CHisloS, Name:String; I:Integer; Component:TComponent;
-
- begin
- OpenDialog1.Execute;
- AssignFile(F, OpenDialog1.FileName);
- Reset(F);
- ReadLn(F,ChisloS);
- I:=StrToInt(ChisloS);
- if I=8 then
- Form5.Show;
- ReadLn(F,Name);
- Form5.Label16.Caption:=Name;
- For I:=1 to 8 do
- ReadLn(F,Name);
- Component:=FindComponent('Form5.label'+IntToStr(I));
- (Component as TLabel).Caption:=Name;
-
- end;
 |
Вопрос задал: Адмирал (статус: Посетитель)
Вопрос отправлен: 28 января 2011, 15:53
Состояние вопроса: открыт, ответов: 0.
|
Мини-форум вопроса
Всего сообщений: 6; последнее сообщение — 30 января 2011, 11:38; участников в обсуждении: 3.
|
Адмирал (статус: Посетитель), 28 января 2011, 16:00 [#1]:
кстати ещё спрошу сразу, потаму что прийду наверное только завтра
как в OpenDialog ограничить тип файлов, ну тоесть чтобы можно было выбрать только .txt например
|
|
Вадим К (статус: Академик), 28 января 2011, 16:01 [#2]:
проблема тут FindComponent('Form5.label'+IntToStr(I));
form5.label1 - так нельзя.
нужно так
form5.FindComponent('label'+IntToStr(I));
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Вадим К (статус: Академик), 28 января 2011, 16:03 [#3]:
а что бы только текстовые файлы - это просто
// Разрешено выбрать только .dpr и .pas файлы
openDialog.Filter :=
'Delphi project files|*.dpr|Delphi pascal files|*.pas';
разрешить только текстовые файлы
openDialog.Filter :=
'Текстовые файлы|*.txt';
либо в коде, либо в инспекторе объектов.
Галочка "подтверждения прочтения" - вселенское зло.
|
|
Адмирал (статус: Посетитель), 28 января 2011, 16:06 [#4]:
отображается только последняя строчка из файла, причём в 9 Label
|
28 января 2011, 20:26: Вопрос перемещён из тематического раздела Delphi » Общие вопросы по программированию в раздел Delphi » Работа с компонентами и библиотеками модератором Ерёмин А.А.
|
Адмирал (статус: Посетитель), 28 января 2011, 21:39 [#5]:
что же делать?
|
|
Шичко Игорь (статус: 9-ый класс), 30 января 2011, 11:38 [#6]:
Цитата:
14.For I:=1 to 8 do
15.ReadLn(F,Name);
16.Component:=FindComponent('Form5.label'+IntToStr(I));
17.(Component as TLabel).Caption:=Name;
Так ведь в программе и задано чтобы записывалось в Label9.
Цикл закончился на строке 15. После перебора от 1 до 8 значение I остается равным 9, поэтому в строках 16 и 17 идет определение и запись в компонент Label9.
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|