Казахстанские технические форумы
Программное обеспечение => Языки программирования => Тема начата: ClasSiC от 10 Мая 2008, 01:13:43
-
Помогите реализовать окно авторизации пользователей на Дэльфях 7!
Нужно чтобы при запуске программы - выходило окно для ввода Логина и пароля!
-
Привет!
Для этой затеи существует компонент RXLogin (кажется называется). Где искать спроси у гугля.
Кстати могу помочь, но могу провести лишь листинг( Delphi 2005), а то 7й версии у меня не стоит.
Если нужно конечно
-
Вот листинги как я обещал
Unit1(окно авторизации)
--------------------------------------
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
// Здесь если в поле логина введено test, a в поле пароль 456, то запускается окно программы :)
If (Edit1.Text=''test'') and (Edit2.Text=''456'') then
Begin
form2:=Tform2.Create(Application);
Form2.Show;
Form1.Destroy;
end
else
Begin
MessageDlg(''Пароль или логин неверен.Работа программы будет завершена'',mtWarning,[Mbok],0);
Application.Terminate;
end;
end;
end.
------------------------------------------
unit2 (ваша программа)
-----------------------------------------
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm2 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
{$R *.dfm}
end.
--------------------------------------------
P.S. Вообще то не рекомендуется хранить код в открытом виде
Кстати Form2 необходимо убрать из списка автосоздаваемых форм
P.P.S. Код, конечно, сыроват? но если доработать.. дерзайте.
Если что -обращаетесь?
-
Спасибо, единственное отличие 7-ки от 2005 дельфика, так это '''' (двойные кавычки)
слушай поставь аську, давай с тобой свяжемся!
-
Привет! Моя Ася указана в профиле. Я сижу в ней только ночью. После 0 часов
-
to Hamman : если нет желания сидеть в асе ночью , тогда можно в форум. Но уговаривать никого я не буду
-
Слушай одна проблема, после того как я код откомпилировал, всё работает хорошо, но в процессах всегда остается сама программа, хотя я из неё уже вышел, приходится лезть в процессы и там её шатать, что-то не то, но что ...
-
Интересно! У меня все работает. Проверь код.
Именно этот участок кода
If (Edit1.Text=''''test'''') and (Edit2.Text=''''456'''') then
Begin
form2:=Tform2.Create(Application);
Form2.Show;
Form1.Destroy;
end
else
Begin
MessageDlg(''''Пароль или логин неверен.Работа программы будет завершена'''',mtWarning,[Mbok],0);
Application.Terminate; // Может бы у тебя этой строки нет?
end;
-
Интересно! У меня все работает. Проверь код.
Именно этот участок кода
If (Edit1.Text=''''''''test'''''''') and (Edit2.Text=''''''''456'''''''') then
Begin
form2:=Tform2.Create(Application);
Form2.Show;
Form1.Destroy;
end
else
Begin
MessageDlg(''''''''Пароль или логин неверен.Работа программы будет завершена'''''''',mtWarning,[Mbok],0);
Application.Terminate; // Может бы у тебя этой строки нет?
end;
а может не стоит её мучать командами Дестрой-Терминаторами:)
а проще заменить
Application.Terminate - Form1.Close;
Form1.Destroy - Form1.Close;
-
слушай а это как сделать?
"Кстати Form2 необходимо убрать из списка автосоздаваемых форм"?
-
а может не стоит её мучать командами Дестрой-Терминаторами:)
а проще заменить
Application.Terminate - Form1.Close;
Form1.Destroy - Form1.Close;
[/quote]
Нет тогда Форма2 не показывается :)
Насчет 2го вопроса- в настройках
Project -Options- и две стрелочки < > лева - авто создавать форму, а правая - не создавать ее
Без обид, но трудно было по менюшкам пройтись?
-
слушай а для чего нужно вообще убирать эту форму?
Если гораздо проще выбрать из контексного меню Main Form - ту форму которую надо замостить первой!
-
слушай а для чего нужно вообще убирать эту форму?
Если гораздо проще выбрать из контексного меню Main Form - ту форму которую надо замостить первой!
Какую форму убирать?
В принципе неважно какую. Если ее не убирать программа будет нагружать систему.