Поиск:

Ответ в темуСоздание новой темы Создание опроса
> про форму авторизации, ... 
V
    Опции темы
malayka
Дата 8.6.2010, 16:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 46
Регистрация: 17.4.2009

Репутация: нет
Всего: нет



сделал форму авторизации, в коде проекта его добавление поставил на первое место, и при запуске сначала выходит форма авторизации,  если авторизация прошла успешно показывает след форму. 

Все чики пуки, но одно меня напрягает, по сути форма авторизации является главной, и показав след форму(главную по идее) она остается запущенной и пользователь свернув или закрыв "главную" увидит опять же форму авторизации. Как мне сделать по-другому?? 

Пробовал делать показ формы авторизации на активайт формы главной, но тогда можно просто проигнорировать саму авторизации путем простого закрытия формы (альт+ф4)...
PM MAIL   Вверх
pseud
Дата 8.6.2010, 16:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



Цитата(malayka @  8.6.2010,  16:16 Найти цитируемый пост)
Пробовал делать показ формы авторизации на активайт формы главной, но тогда можно просто проигнорировать саму авторизации путем простого закрытия формы (альт+ф4)... 


И прекрасно. В этом случае ты продолжаешь не показывать "рабочую область" и все экшены остаются неактивны.
Зато у пользователя есть возможность зайти в пункт меню "Помощь\О программе..."

user posted image

Это сообщение отредактировал(а) pseud - 8.6.2010, 16:25


--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
Antimol
Дата 8.6.2010, 16:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 28.7.2007
Где: Украина, Киев

Репутация: 4
Всего: 4



Цитата

Пробовал делать показ формы авторизации на активайт формы главной, но тогда можно просто проигнорировать саму авторизации путем простого закрытия формы (альт+ф4)... 

Я делал на событие onShow главной формы показ логотип, показ формы авторизации, если авторизация проходила нормально - возвращал true, если нет - false, и дальше проверял если все нормально - показывал главную форму, если нет - закрывал програму, или можно выводил о5 форму авторизации, пока не будут введены правильные значения и она не возвратит true.
--------------------
Лучшее спасибо это "+" к репутации.   Мой блог: ИНФОРМАТИЗАЦИЯ, и mirsovetov.net. Написание программ, исправление ошибок, статьи....
PM MAIL WWW ICQ   Вверх
former
Дата 8.6.2010, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



malayka, держи пример (D 2009).

Присоединённый файл ( Кол-во скачиваний: 21 )
Присоединённый файл  sample.7Z 8,69 Kb


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
malayka
Дата 8.6.2010, 17:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 46
Регистрация: 17.4.2009

Репутация: нет
Всего: нет



спасиб за внимание.  pseud, но ведь в таком случае можно просто закрыть авторизацию и получить доступ к программе. тогда появляется другой вопрос - как запретить закрытие формы по alt+F4? иконки можно скрыть хоть)) 
Antimol, с оншов не совсем корректно получается - есл в активайт нам не доступны функции программы, то в оншов  беспрепятственно можно работать..) наверно я не совсем так делаю


former, благодарю, все суперский, но с alt+F4 вопрос все еще актуален) надо как-то запретить его на форме авторизации... 


Это сообщение отредактировал(а) malayka - 8.6.2010, 18:01
PM MAIL   Вверх
former
Дата 8.6.2010, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Цитата(malayka @  8.6.2010,  17:31 Найти цитируемый пост)
former, благодарю, все суперский, но с alt+F4 вопрос все еще актуален) надо как-то запретить его на форме авторизации... 

Исправленный модуль формы авторизации:
Код

unit Unit2;

interface

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

type
  TForm2 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Edit1: TEdit;
    Edit2: TEdit;
    Bevel1: TBevel;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure Button2Click(Sender: TObject);
    procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;
  CloseFlag:integer;

implementation

{$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject);
begin
  CloseFlag:=1;
  Close;
end;

procedure TForm2.Button2Click(Sender: TObject);
begin
  Form1.Close;
end;

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  Action:=caFree;
end;

procedure TForm2.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
  if CloseFlag=1 then CanClose:=True
  else CanClose:=False;
end;

procedure TForm2.FormCreate(Sender: TObject);
begin
  CloseFlag:=0;
end;

end.



--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
malayka
Дата 8.6.2010, 19:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 46
Регистрация: 17.4.2009

Репутация: нет
Всего: нет



разобрался спс)
PM MAIL   Вверх
pseud
Дата 9.6.2010, 08:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



malayka, а чем закрытие формы авторизации (по крестику или алт-ф4) отличается от нажатия кнопки "Отмена"?



--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
former
Дата 9.6.2010, 09:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Цитата(pseud @  9.6.2010,  08:55 Найти цитируемый пост)
malayka, а чем закрытие формы авторизации (по крестику или алт-ф4) отличается от нажатия кнопки "Отмена"?

pseud, да на форме авторизации вообще кнопки в заголовке ненужны. smile


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
pseud
Дата 9.6.2010, 09:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



Цитата(former @  9.6.2010,  09:33 Найти цитируемый пост)
pseud, да на форме авторизации вообще кнопки в заголовке ненужны. smile 

вопрос мой не понят - не понят мой вопрос  smile 
Цитата(malayka @  8.6.2010,  17:31 Найти цитируемый пост)
former, благодарю, все суперский, но с alt+F4 вопрос все еще актуален) надо как-то запретить его на форме авторизации... 

я к тому, что на форме авторизации есть кнопка "Отмена", есть "Крестик".
Внимание вопрос: "Зачем запрещать нажатие alt+F4?"


--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
former
Дата 9.6.2010, 09:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Цитата(pseud @  9.6.2010,  09:42 Найти цитируемый пост)
Внимание вопрос: "Зачем запрещать нажатие alt+F4?" 

Что бы избежать этого:
Цитата(malayka @  8.6.2010,  17:31 Найти цитируемый пост)
просто закрыть авторизацию и получить доступ к программе.

Кроме того, может у него по Alt+F4 другое действие выполняется. Мы же не знаем. smile 



--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Akella
  Дата 9.6.2010, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Цитата(former @  9.6.2010,  09:54 Найти цитируемый пост)
Кроме того, может у него по Alt+F4 другое действие выполняется.

значит пусть перепрограммирует на другое сочетание smile

Добавлено @ 11:09
Цитата(malayka @  8.6.2010,  17:31 Найти цитируемый пост)
но с alt+F4 вопрос все еще актуален) надо как-то запретить его на форме авторизации... 

1. В главной форме сделай переменную. Если пользователь не авторизован должным образом, то в главной форме блокируй меню, кнопки и т.д. с сообщением типа - Вы не авторизованы в программе.

2. Перехватывай сочетание alt+F4
Код

procedure TfmLogon.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
 if (ssAlt in Shift) and (key = vk_f4) then key := 0;//сбрасываем код нажатой клавиши

end;


Это сообщение отредактировал(а) Akella - 9.6.2010, 11:11
PM MAIL   Вверх
former
Дата 9.6.2010, 11:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Цитата(Akella @  9.6.2010,  11:05 Найти цитируемый пост)
1. В главной форме сделай переменную. Если пользователь не авторизован должным образом, то в главной форме блокируй меню, кнопки и т.д. с сообщением типа - Вы не авторизованы в программе.

2. Перехватывай сочетание alt+F4

Akella, а зачем такой огород городить? 
Чем мой вариант не устраивает? Все в одной форме и два выхода: авторизован или не авторизован. Тем более, что исключаются другие сочетания клавиш закрытия.

Это сообщение отредактировал(а) former - 9.6.2010, 11:14


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
pseud
Дата 9.6.2010, 11:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



Авторизация:
user posted image
Нажали отмену:
Остается возможность таки авторизоваться/выйти/прочитать о программе.
user posted image
Авторизовались:
user posted image


--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
former
Дата 9.6.2010, 11:24 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Цитата(pseud @  9.6.2010,  11:19 Найти цитируемый пост)
Остается возможность таки авторизоваться/выйти/прочитать о программе.

Все верно. Настройка интерфейса выполняется после идентификации и авторизации.
Но в данном случае такой задачи не ставилось. Я сделал простой пример, для демонстрации. Как автор поста реализует у себя - это его дело.
Лично я тоже загружаю главное окно независимо от результатов авторизации для того что-бы можно было сделать, например, настройки подключения и т.п.


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0582 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.