|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.04.2010, 09:16 | #1 |
Пользователь
Регистрация: 02.04.2010
Сообщений: 33
|
Запись в файл переменной из другого модуля.
Я столкнулась с небольшой проблемой.
Мне нужно при создании формы записать в файл переменную, объявленную в другом модуле. Я это делаю так: Код:
Когда я открываю файл, выводится следующее: Ф.И.О.: Подскажите, пожалуйста, что я делаю не правильно? Последний раз редактировалось Stilet; 07.04.2010 в 10:50. |
07.04.2010, 09:33 | #2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Если же она как глобальная в var описана то просто подключи в uses модуль Для точности можно еще написать write(f, 'Ф.И.О: '+Модуль.surname+' ');
I'm learning to live...
|
|
07.04.2010, 09:40 | #3 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,758
|
а чему равна переменная surname в момент записи?
|
07.04.2010, 09:43 | #4 |
Пользователь
Регистрация: 02.04.2010
Сообщений: 33
|
на первой форме в edit1 вводится фамилия, которая при записи должна присваиваться переменной surname
переменная находится в var. модули подключены. а фамилия в файл все равно не выводится Последний раз редактировалось Stilet; 07.04.2010 в 10:50. |
07.04.2010, 10:49 | #5 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
давайте код обоих модулей, и ясно будет, где ошибка. |
|
07.04.2010, 10:52 | #6 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
А не проще ли:
Код:
I'm learning to live...
|
07.04.2010, 11:09 | #7 |
Пользователь
Регистрация: 02.04.2010
Сообщений: 33
|
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Buttons, ExtCtrls, StdCtrls; type TForm1 = class(TForm) GroupBox1: TGroupBox; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Edit5: TEdit; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Button1: TButton; Panel1: TPanel; Timer1: TTimer; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public surname, _name, patronymic, group, test_book,t: string; { Public declarations } end; var Form1: TForm1; surname, _name, patronymic, group, test_book,t: string; implementation uses Unit2, Unit3; {$R *.dfm} procedure TForm1.Timer1Timer(Sender: TObject); begin Panel1.Caption:= 'Âðåìÿ: '+TimeToStr(Time); end; procedure TForm1.Button2Click(Sender: TObject); var f:TextFile; begin if (edit1.Text='Ââåäèòå ôàìèëèþ') or (edit2.Text='Ââåäèòå èìÿ') or (edit3.Text='Ââåäèòå îò÷åñòâî') or (edit4.Text='Ââåäèòå íîìåð ãðóïïû') or (edit5.Text='Ââåäèòå íîìåð çà÷åòíîé êíèæêè') then begin ShowMessage('Âû ââåëè íå âñå äàííûå!') end else begin surname:= edit1.Text; _name:= edit2.Text; patronymic:= edit3.Text; form3.Edit1.Text:= surname; Edit1.ReadOnly:= true; Edit2.ReadOnly:= true; Edit3.ReadOnly:= true; Edit4.ReadOnly:= true; Edit5.ReadOnly:= true; button2.Enabled:=false; form3.ShowModal; end; end; end. |
07.04.2010, 11:14 | #8 |
Пользователь
Регистрация: 02.04.2010
Сообщений: 33
|
public
{ Public declarations } end; var Form3: TForm3; o_question: array[1..75,1..8] of String; temp_mo: array[1..25] of integer; temp_no: array[1..5] of integer; mo,no,no1,no2,no3,no4,no5,so,pro:in teger; implementation uses Unit1, Unit2; {$R *.dfm} procedure TForm3.o_deduce; var f:TextFile; number:string; begin Memo1.Text:= o_question [mo,1]; Memo2.Text:= o_question[mo,no1]; Memo3.Text:= o_question[mo,no2]; Memo4.Text:= o_question[mo,no3]; Memo5.Text:= o_question[mo,no4]; Memo6.Text:= o_question[mo,no5]; StringGrid1.Cells[0,0]:=''; StringGrid1.Enabled:=true; Memo2.Color:= clWhite; memo2.Font.Size:=12; StringGrid2.Cells[0,0]:=''; StringGrid2.Enabled:=true; Memo3.Color:= clWhite; memo3.Font.Size:=12; StringGrid3.Cells[0,0]:=''; StringGrid3.Enabled:=true; Memo4.Color:= clWhite; memo4.Font.Size:=12; StringGrid4.Cells[0,0]:=''; StringGrid4.Enabled:=true; Memo5.Color:= clWhite; memo5.Font.Size:=12; StringGrid5.Cells[0,0]:=''; StringGrid5.Enabled:=true; Memo6.Color:= clWhite; memo6.Font.Size:=12; AssignFile(f, 'C:\result.txt'); Append(f); number:=inttostr(so); writeln(f,'Âîïðîñ ¹'+number); writeln(f,question [temp_mo[so],1]); CloseFile(f); end; procedure TForm3.FormCreate(Sender: TObject); var f:TextFile; buf: string; k,n:integer; begin AssignFile (f, 'C:\result.txt'); Append(f); writeln(f,'-------------------------------------------------------------------'); writeln(f,' '); writeln(f,' '); writeln(f,'-------------------------------------------------------------------'); write(f, 'Ô.È.Î. ñòóäåíòà: '+Unit1.surname+' '); write(f, _name+' '); writeln(f, patronymic); writeln(f,'ÎÁÓ×ÅÍÈÅ'); CloseFile(f); panel2.Visible:=false; Memo7.Visible:=false; form3.Height:=930; pro:=0; AssignFile(f, 'C:\testing.txt'); Reset(f); while (not EOF(f)) do begin for k:= 1 to 75 do begin for n:= 1 to 8 do begin readln(f, buf); o_question[k,n]:= buf; end; end; end; CloseFile(f); so:=1; o_Color; label2.Caption:= inttostr(so); CreateM_o; CreateN_o; mo:= temp_mo[so]; o_deduce; end; procedure TForm3.Button1Click(Sender: TObject); var q,b:integer; str,str_p,j: string; f:TextFile; begin if StringGrid1.Cells[0,0]='X' then str:= Memo2.Text; if StringGrid2.Cells[0,0]='X' then str:= Memo3.Text; if StringGrid3.Cells[0,0]='X' then str:= Memo4.Text; if StringGrid4.Cells[0,0]='X' then str:= Memo5.Text; if StringGrid5.Cells[0,0]='X' then str:= Memo6.Text; str_p:= o_question[mo,7]; if str=str_p then begin q:=1; b:=0; Memo7.Visible:=false; Form3.Height:=930; Panel3.Font.Color:= clLime; Panel3.Font.Style:= [fsBold]; panel3.Caption:='ÎÒÂÅÒ ÏÐÀÂÈËÜÍÛÉ!'; pro:=pro+1; Memo7.Text:='Ïîìîùü'; if pro<25 then so:=so+1; o_Color; label2.Caption:= inttostr(so); CreateN_o; mo:= temp_mo[so]; o_deduce; end else begin q:=0; panel2.Visible:=false; Panel3.Font.Color:= clRed; Panel3.Font.Style:= [fsBold]; panel3.Caption:='ÎÒÂÅÒ ÍÅ ÏÐÀÂÈËÜÍÛÉ!'; Form3.Height:=999; form3.Position:= poDesktopCenter; Memo7.Visible:= true; Memo7.Text:= o_question[mo,8]; StringGrid1.Cells[0,0]:=''; StringGrid1.Enabled:=true; Memo2.Color:= clWhite; memo2.Font.Size:=12; StringGrid2.Cells[0,0]:=''; StringGrid2.Enabled:=true; Memo3.Color:= clWhite; memo3.Font.Size:=12; StringGrid3.Cells[0,0]:=''; StringGrid3.Enabled:=true; Memo4.Color:= clWhite; memo4.Font.Size:=12; StringGrid4.Cells[0,0]:=''; StringGrid4.Enabled:=true; Memo5.Color:= clWhite; memo5.Font.Size:=12; StringGrid5.Cells[0,0]:=''; StringGrid5.Enabled:=true; Memo6.Color:= clWhite; memo6.Font.Size:=12; end; AssignFile(f, 'C:\result.txt'); Append(f); if q=0 then b:=b+1 else b:=0; j:=inttostr(b); writeln(f,' êîëè÷åñòâî îøèáîê:'+j); CloseFile(f); if pro=25 then begin panel2.Visible:=true; button1.Enabled:=false; StringGrid1.Enabled:=false; StringGrid2.Enabled:=false; StringGrid3.Enabled:=false; StringGrid4.Enabled:=false; StringGrid5.Enabled:=false; Form3.Height:=930; panel2.Caption:='ÎÁÓ×ÅÍÈÅ ÎÊÎÍ×ÅÍÎ!!!'; PANEL3.Caption:= 'Ïðàâèëüíûõ îòâåòîâ: '+inttostr(pro); end; end; procedure TForm3.FormClose(Sender: TObject; var Action: TCloseAction); var f:TextFile; begin AssignFile (f, 'C:\result.txt'); Append(f); if pro=25 then writeln(f,': îáó÷åíèå çàêîí÷åíî') else writeln(f,': îáó÷åíèå íå îêîí÷åíî. Êîëè÷åñòâî îòâåòîâ: '+inttostr(pro)); CloseFile(f); end; |
07.04.2010, 13:08 | #9 |
Пользователь
Регистрация: 02.04.2010
Сообщений: 33
|
Всем спасибо за помощь! Вся идея была не правильна. Япеределала не много и все заработало
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа со списком из другого модуля. | DIMANJ | Общие вопросы Delphi | 4 | 11.10.2009 13:33 |
Как обратится к глобальной переменной из модуля | tavrocotaps | Общие вопросы Delphi | 2 | 10.06.2009 11:08 |
Как выполнить процедуру (функцию) из другого модуля | Всеслав | Общие вопросы Delphi | 4 | 23.05.2009 19:43 |
Создать файл с данными на основе другого файла. Паскаль)) | ТРОЯН=) | Помощь студентам | 13 | 16.04.2009 18:51 |
BMP-файл внутри другого файла | Pashan | Общие вопросы C/C++ | 0 | 08.04.2009 16:37 |