function Pass(ss, pas: String): boolean; // Функция шифровки пароля
var
i: integer;
s: String[255];
c: array[0..255] of Byte absolute s;
begin
s:= ss;
for i := 1 to Ord(s[0]) do
c[i] := 21 xor c[i]; // Изменил 23 на 21
result := s = pas;
end;
procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char); // Нажатие клавиш в сетке
var
s: string;
begin
If DBGrid1.ReadOnly then
begin
a:= 0;
ShowMessage('Вы не можете редактировать данные и вносить новые т.к. ваш уровень доступа "Пользователь"');
exit;
end;
//
a:= 1;
if DBGrid1.SelectedField.FieldName <> 'DisTime' then // Если текущее поле не равно DisTime
case key of // Разрешаем вводить буквы, точку, enter, backspace, пробел
'a'..'z' : inc(strdln);
'A'..'Z' : inc(strdln);
'а'..'я' : inc(strdln);
'А'..'Я' : inc(strdln);
'.' : inc(strdln);
#13 : ;
#8 : If strdln > 0 then
Dec(strdln);
#32 : inc(strdln);
else
begin
key:= #0; // Все отстальные символы не отображаем и выводим предупреждение
If DBGrid1.SelectedField.FieldName = 'NameDis' then
s:= 'Наименование дисциплины'
else
If DBGrid1.SelectedField.FieldName = 'Prepod' then
s:= 'Преподаватель'
else
If DBGrid1.SelectedField.FieldName = 'WeekDay' then
s:= 'День недели';
ShowMessage('Поле ''' + s + ''' не может состоять из символов или чисел');
end;
end;
If (DBGrid1.SelectedField.FieldName = 'NameDis') and (strdln >= 71) then
ShowMessage('Поле "Наименование дисциплины" может содержать не более 70 символов');
If (DBGrid1.SelectedField.FieldName = 'Prepod') and (strdln >= 41) then
ShowMessage('Поле "Преподаватель" может содержать не более 40 символов');
If (DBGrid1.SelectedField.FieldName = 'WeekDay') and (strdln >= 12) then
ShowMessage('Поле "День недели" может содержать не более 11 символов');
end;
procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char); // Нажатие клавиш в сетке
var
s: string;
begin
If DBGrid1.ReadOnly then
begin
a:= 0;
ShowMessage('Вы не можете редактировать данные и вносить новые т.к. ваш уровень доступа "Пользователь"');
exit;
end;
//
a:= 1;
if DBGrid1.SelectedField.FieldName <> 'DisTime' then // Если текущее поле не равно DisTime
case key of // Разрешаем вводить буквы, точку, enter, backspace, пробел
'a'..'z' : inc(strdln);
'A'..'Z' : inc(strdln);
'а'..'я' : inc(strdln);
'А'..'Я' : inc(strdln);
'.' : inc(strdln);
#13 : ;
#8 : If strdln > 0 then
Dec(strdln);
#32 : inc(strdln);
else
begin
key:= #0; // Все отстальные символы не отображаем и выводим предупреждение
If DBGrid1.SelectedField.FieldName = 'NameDis' then
s:= 'Наименование дисциплины'
else
If DBGrid1.SelectedField.FieldName = 'Prepod' then
s:= 'Преподаватель'
else
If DBGrid1.SelectedField.FieldName = 'WeekDay' then
s:= 'День недели';
ShowMessage('Поле ''' + s + ''' не может состоять из символов или чисел');
end;
end;
If (DBGrid1.SelectedField.FieldName = 'NameDis') and (strdln >= 71) then
begin
If strdln > 70 then
strdln:= 70;
ShowMessage('Поле "Наименование дисциплины" может содержать не более 70 символов');
end;
If (DBGrid1.SelectedField.FieldName = 'Prepod') and (strdln >= 41) then
begin
If strdln > 40 then
strdln:= 40;
ShowMessage('Поле "Преподаватель" может содержать не более 40 символов');
end;
If (DBGrid1.SelectedField.FieldName = 'WeekDay') and (strdln >= 12) then
begin
If strdln > 11 then
strdln:= 11;
ShowMessage('Поле "День недели" может содержать не более 11 символов');
end;
end;
procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char); // Нажатие клавиш в сетке
var
s: string;
begin
If DBGrid1.ReadOnly then
begin
a:= 0;
ShowMessage('Вы не можете редактировать данные и вносить новые т.к. ваш уровень доступа "Пользователь"');
exit;
end;
//
a:= 1;
if DBGrid1.SelectedField.FieldName <> 'DisTime' then // Если текущее поле не равно DisTime
case key of // Разрешаем вводить буквы, точку, enter, backspace, пробел
'a'..'z' : inc(strdln);
'A'..'Z' : inc(strdln);
'а'..'я' : inc(strdln);
'А'..'Я' : inc(strdln);
'.' : inc(strdln);
#13 : ;
#8 : If strdln > 0 then
Dec(strdln);
#32 : inc(strdln);
else
begin
key:= #0; // Все отстальные символы не отображаем и выводим предупреждение
If DBGrid1.SelectedField.FieldName = 'NameDis' then
s:= 'Наименование дисциплины'
else
If DBGrid1.SelectedField.FieldName = 'Prepod' then
s:= 'Преподаватель'
else
If DBGrid1.SelectedField.FieldName = 'WeekDay' then
s:= 'День недели';
ShowMessage('Поле ''' + s + ''' не может состоять из символов или чисел');
end;
end;
If (DBGrid1.SelectedField.FieldName = 'NameDis') and (strdln = 71) then
ShowMessage('Поле "Наименование дисциплины" может содержать не более 70 символов');
If (DBGrid1.SelectedField.FieldName = 'Prepod') and (strdln = 41) then
ShowMessage('Поле "Преподаватель" может содержать не более 40 символов');
If (DBGrid1.SelectedField.FieldName = 'WeekDay') and (strdln = 12) then
ShowMessage('Поле "День недели" может содержать не более 11 символов');
end;
procedure TForm1.DBGrid1KeyUp(Sender: TObject; var Key: Word; // Определение длины вводимой строки
Shift: TShiftState);
var
B: byte;
begin
for B := 0 to DBGrid1.ControlCount - 1 do
if DBGrid1.Controls[B] is TInPlaceEdit then
with DBGrid1.Controls[B] as TInPlaceEdit do
strdln := Length(Text);
end;
procedure TForm1.OpenDialog1CanClose(Sender: TObject;
var CanClose: Boolean);
begin
a:= 2;
// Подключение базы
ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source='
+OpenDialog1.FileName+';Persist Security Info=True;Jet OLEDB:Database Password=lekchii;'; // Добавление параметров базы
Try
ADOConnection1.Connected:=true; // Подключение баз
Except
MessageDlg('Похоже база не найдена',mtWarning,[mbOK],0);
OpenDialog1.Execute; // Вывод диалога выбора базы
end;
end;
procedure TForm1.OpenDialog1Close(Sender: TObject);
begin
If a <> 2 then
begin
ShowMessage('База данных не выбрана программа будет закрыта.');
Application.Terminate;
end;
end;
Если Вы уже зарегистрированы на Портале - войдите в систему, если Вы еще не регистрировались - пройдите простую процедуру регистрации.