Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 07.12.2013, 18:52
DrWeb DrWeb вне форума
Прохожий
 
Регистрация: 27.05.2012
Сообщения: 4
Репутация: 10
По умолчанию Delhi 7 пароль при входе в программу

Вопрос таков как встроить сюда что бы при нажатии на кнопку открывалась Form2. Все подключено. И в базе access логин и пароль задан!
При входе выкидывает с проги!

Код:
procedure TUserForm.Button1Click(Sender: TObject);
begin
If (LoginEdit.Text<>'') and (PasswordEdit.Text<>'') then //поля не пустые
 begin
 UserQuery.Active:=false;
 UserQuery.Parameters.ParamByName('log').Value:=LoginEdit.Text;
 UserQuery.Active:=true;
   If UserQuery.RecordCount<>0 then
     begin
      If UserQuery.FieldByName('Пароль').AsString=PasswordEdit.Text then begin
         login:=LowerCase(LoginEdit.Text);
         If UserQuery.FieldByName('Доступ').AsString='True' then  Dostup:=true//есть доступ
            else Dostup:=false;
             Close;

       end
          else Showmessage('Пароль неверный!');
     end;
 end
    else ShowMessage('Введите имя пользователя и пароль!');//пустые поля
end;

Последний раз редактировалось DrWeb, 07.12.2013 в 19:05.
Ответить с цитированием
  #2  
Старый 07.12.2013, 20:31
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от DrWeb
Вопрос таков как встроить сюда что бы при нажатии на кнопку открывалась Form2. Все подключено. И в базе access логин и пароль задан!
При входе выкидывает с проги!

Код:
.....
      If UserQuery.FieldByName('Пароль').AsString=PasswordEdit.Text then begin
         login:=LowerCase(LoginEdit.Text);
         If UserQuery.FieldByName('Доступ').AsString='True' then  Dostup:=true//есть доступ
            else Dostup:=false;
             Close;
.....
Метод Close закрывает форму. Закрытие главной формы автоматически завершает всё приложение.
Ответить с цитированием
  #3  
Старый 07.12.2013, 21:35
DrWeb DrWeb вне форума
Прохожий
 
Регистрация: 27.05.2012
Сообщения: 4
Репутация: 10
По умолчанию

Цитата:
Сообщение от poli-smen
Метод Close закрывает форму. Закрытие главной формы автоматически завершает всё приложение.
если же мв уберем close переход не осуществляется!
Ответить с цитированием
  #4  
Старый 07.12.2013, 21:45
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от DrWeb
если же мв уберем close переход не осуществляется!
Не пойму о каком переходе идёт речь. Метод Close в данном случае просто закроет форму TUserForm. Чтобы ещё и отобразить скрытую Form2 нужно выполнить Form2.Show.
TUserForm - это главная форма приложения?
Ответить с цитированием
  #5  
Старый 08.12.2013, 14:13
DrWeb DrWeb вне форума
Прохожий
 
Регистрация: 27.05.2012
Сообщения: 4
Репутация: 10
По умолчанию

Цитата:
Сообщение от poli-smen
Не пойму о каком переходе идёт речь. Метод Close в данном случае просто закроет форму TUserForm. Чтобы ещё и отобразить скрытую Form2 нужно выполнить Form2.Show.
TUserForm - это главная форма приложения?
Да через нее осуществляется вход в программу.
Ответить с цитированием
  #6  
Старый 08.12.2013, 16:38
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от DrWeb
Да через нее осуществляется вход в программу.
О чём я и говорю - закрытие главной формы автоматически завершает приложение. Действие метода Close формы в точности такое как если нажать кнопку с крестиком в правом верхнем углу - действием по-умолчанию для обычной неглавной формы является просто скрытие, действие по-умолчанию для главной - завершение приложения.

Главной формой становится первая созданная методом Application.CreateForm, поэтому если нужно создать неглавную форму до создания главной формы приложения - создавай эту неглавную обычным конструктором TUserForm.Create.

Это верно для старых версий Delphi включая Delphi 7.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 00:12.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025