ДБ
Дмитрий Бондарев

програмисты мне опять помощь нужна!) delphi 7

вот в чем дело как мне поставить ограничения на ввод в edit1 ну например при 3 не верных попытках пароля у человека закрываеться программа: ) зарание спс вот скрипт на ввод пароля как на него поставить 3 попытки на ввод
procedure TForm1.sButton13Click(Sender: TObject);
begin
if sedit1.Text='1234' then
sedit1.Text:='пароль верен'
else
sedit1.text:=не верный пароль! '

ЭП
Эдуард Петров

Вот моё решение Вашей проблемы:

1. Сначала надо добавить глобальную переменную, в которой будете хранить количество попыток ввода пароля. Делается это так:
переход в начало Unit1.pas, туда, где примерно такой код:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;

type
TForm1 = class(TForm)
Button1: TButton;
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
PasswordRepeats: Integer // СЮДА ДОБАВЛЯЕМ НАШУ ПЕРЕМЕННУЮ !!!

2. А теперь, собственно, наша процедура sButton13Click:

procedure TForm1.sButton13Click(Sender: TObject);
begin
if sedit1.Text='1234' then
sedit1.Text:='пароль верен'
else
If PasswordRepeats = 3 then /// ЭТО КОД, КОТОРЫЙ ЗАКРЫВАЕТ ПРОГРАММУ, ЕСЛИ ЗНАЧЕНИЕ ПЕРЕМЕННОЙ, ОТОБРАЖАЮЩЕЙ ЧИСЛО ПОПЫТОК ВВОДА ПАРОЛЯ, БОЛЬШЕ ТРЁХ!! !
begin
Close; // ЗАКРЫВАЕМ ПРОГРАММУ 🙂
end;
sedit1.text:=не верный пароль! '
PasswordRepeats := PasswordRepeats + 1; /// ЭТО МЫ ОТМЕЧАЕМ В ПЕРЕМЕННОЙ НЕВЕРНУЮ ПОПЫТКУ ВВОДА ПАРОЛЯ!!!

Ал
Алсу

var count:Integer=0;

procedure TForm1.sButton13Click(Sender: TObject);
begin
if sedit1.Text='1234' then begin
sedit1.Text:='пароль верен'
end;
else begin
sedit1.text:=не верный пароль! ';
count:=count+1;
end;
if count=3 then begin
MessageDlg('Внимание, количество попыток ввода пароля превышено программа будет закрыта',mtWarning,[mbOK],0);
close; // Можно использовать Form1.Close; но и так тож будет работать

PS: Игорь в вашем случае программа закроется после 4 ошибок ввода пароля а не после 3

АW
Александр Winston

в цикле попробуй

ДС
Диана С

Добавить в секцию private count: integer - это будет счетчик
В конструкторе класса обнулять этот счетчик
А метод переписать так:
procedure TForm1.sButton13Click(Sender: TObject);
begin
if Count <=3 then
begin
if sedit1.Text='1234' then
sedit1.Text:='пароль верен'
else
begin
sedit1.text:=не верный пароль! ';
inc(Count);
end
end
else
begin
sedit1.text:='Превышено допустимое количество попыток ввода'
end;

Похожие вопросы
Delphi 7 нужна помощ
Нужна помощь! Delphi!
нужна помощь програмистов)
Нужна помощь в Delphi!
Програмисты, нужна помощь в турбо паскале!!!
Срочно нужна помощь програмиста!!!
Нужна помощь по Delphi
нужна помощь програмиста
програмисты мне опять помощь нужна!) delphi 7 очень очень
Нужна Помощь Спец Програмистов!!