Форум: "Основная";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];
ВнизНУжно просто навсего удалить файл Найти похожие ветки
← →
KLAUS © (2004-05-09 19:19) [0]Народ помоги те плиз, нужно удалить файл если ввели не правильный номер.Проблема в том, что если ввести сначало верный номер, а затем не верный, а файл удаляется, но если ввысти вырный файл, закрыть программу, затем запустить и ввысти не верный номер, но файл не удаляется.....ПЛИЗ HELP
procedure TForm2.Edit1Change(Sender: TObject);
var
i: byte;
begin
if Length(Edit1.Text)>0 then
for i:=0 to Length(Edit1.Text) do begin
If (Edit1.Text[i]="1") or (Edit1.Text[i]="2") or
(Edit1.Text[i]="3") or (Edit1.Text[i]="4") or
(Edit1.Text[i]="5") or (Edit1.Text[i]="6") or
(Edit1.Text[i]="7") or (Edit1.Text[i]="8") or
(Edit1.Text[i]="9") or (Edit1.Text[i]="0")
then
begin
Edit1.Text:="";
g:="";
g:=g+"НЕЛЬЗЯ"+#160+"ИСПОЛЬЗОВАТЬ"+#160+" ЦИФРЫ";
ShowMessage(g);
end;
end;
end;
procedure TForm2.Button1Click(Sender: TObject);
var
f1:TextFile;
s:byte;
a:integer;
ch : array [0..1000] of Char;
Begin
Form1.Edit1.Text:=Edit2.Text;
If Edit1.Text="" then begin
ShowMEssage(Input Name) ; //Input Name
Edit2.Text:="";
end
else
If Form1.Label10.Caption=Edit2.Text then
a:= GetSystemDirectory(ch, MAX_PATH);
AssignFile(f1,ch+".r");
rewrite(f1);
writeln(f1,Edit2.Text);
CloseFile(f1);
Form1.Caption:=GOOD;
Edit1.Text:="";
Edit2.Text:="";
end
else begin
if FileExists(ch+".r") then
DeleteFile(ch+".r");
ShowMessage("BAD");
Edit1.Text:="";
Edit2.Text:="";
begin
s:=10;
if length(Edit2.text)<>s then
DeleteFile(ch+".r");
Form1.Caption:=Ne zareg;
end ;
end;
end;
end;
procedure TForm2.FormCreate(Sender: TObject);
var
d:byte;
begin
d:=15;
Edit2.MaxLength:=d;
end;
end.
← →
KilkennyCat © (2004-05-09 19:33) [1]
procedure TForm2.Edit1Change(Sender: TObject);
var
i: byte;
begin
if Length(Edit1.Text)>0 then for i:=1 to Length (Edit1.Text) do If Edit1.Text[i] in ["0".."9"] then begin
Edit1.Text:="";
ShowMessage("НЕЛЬЗЯ ИСПОЛЬЗОВАТЬ ЦИФРЫ");
break;
end;
end;
это что касается первой части. Сравните внимательно. Это так должны были бы сделать Вы, если не хотите делать маску или просто отлавливать нажатие клавиш.
← →
KilkennyCat © (2004-05-09 19:34) [2]Да, кстати, если до ошибочного введения цифры, что-то было правильно, оно исчезнет.... нехорошо.
← →
KilkennyCat © (2004-05-09 19:39) [3]А во второй части вы то ли лишний End написали, то ли недописали где-то Begin... И вообще, посмотрите мой листинг, и посмотрите свой. От Вашего, извините, просто голова болит. Отформатируйте, "плиз".
← →
KLAUS © (2004-05-09 19:57) [4]Да ошибка в этой части
if FileExists(ch+".r") then
DeleteFile(ch+".r");
ShowMessage("BAD");
Edit1.Text:="";
Edit2.Text:="";
begin
s:=10;
if length(Edit2.text)<>s then
DeleteFile(ch+".r");
← →
KLAUS © (2004-05-09 20:20) [5]Люди добрые помогите?
← →
KilkennyCat © (2004-05-09 21:47) [6]Ne zareg - это переменная?
procedure TForm2.FormCreate(Sender: TObject);
var
d:byte;
begin
d:=15;
Edit2.MaxLength:=d;
end;
Это не нужно. Для первого объявления достаточно выставить данное свойство в редакторе свойств Edit2. Хотя, если Вам удобнее объявлять некоторые вещи непосредственно в программе, то зачем переменная d? Она ведь не глобальная, и больше нигде не используется.
так вполне достаточно:procedure TForm2.FormCreate(Sender: TObject);
begin
Edit2.MaxLength:=15;
end;
Разбираем далее...Form1.Edit1.Text:=Edit2.Text;
If Edit1.Text="" then begin
ShowMEssage(Input Name) ; //Input Name
Edit2.Text:="";
end
По-русски говоря, мы присваиваем Editу1 на первой форме значение Edit2 на второй форме, при этом, если Edit1 второй формы пуст, то обнуляем Edit2 второй формы. ну... возможно, так и надо, но на всякий случай, проверьте корректность связей между формами один и два.else If Form1.Label10.Caption=Edit2.Text then a:= GetSystemDirectory(ch, MAX_PATH);
AssignFile(f1,ch+".r");
rewrite(f1);
writeln(f1,Edit2.Text);
CloseFile(f1);
Form1.Caption:=GOOD;
Edit1.Text:="";
Edit2.Text:="";
end
У меня мой мозговой интерпретатор словил end и прекратил выполнение программы. Исправляйте, и пока Ваш код не будет удобочитаемым (я ведь просил отформатировать), я его смотреть не буду, да и Вы сами будете искать ошибку еще неделю.
← →
KLAUS © (2004-05-09 22:37) [7]KilkennyCat ©
Спасибо вам за разъяснения, после того как отформатировал ошибка нашлась сама собой.
СПАСИБО ЗА СОВЕТ!
← →
KilkennyCat © (2004-05-09 22:57) [8]:)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.046 c