Jump to content
cheires

Problema com formulário de login

Recommended Posts

cheires

Olá a todos,

 

Estou a construir uma aplicação onde o formulário de Login é o formulário principal.

Ao fazer o login correto, e dependendo do nível de permissões do utilizador, o programa abre um de três formulários, ou o de administrador, o de supervisor  ou o de operador.

Quando faço o close() dp formulário de login todo o programa termina, pois o form login é o principal.

Como necessito de saber qual o nivel de acesso do utilizador, para abrir o formulário adequado, poupava uma chamada à BD se o próximo formulario fosse aberto apartir do formulário login, pois esse já tem informação do utilizador.

Como posso conseguir isto sem ter que ficar com o formulário login "pendurado" num Hide()?

Abraço a todos e obrigado antecipadamente.

Share this post


Link to post
Share on other sites
nelsonr

Boas,

não vejo qual o problema de ficares com o form login pendurado num hide.

Assim que fechares o form que abrires (por exemplo com a opção logout), voltas a fazer show.

 

Share this post


Link to post
Share on other sites
cheires

Fico com memória ocupada por exemplo, o que em alguns computadores pode ser problemático.

Queria evitar isso...

Share this post


Link to post
Share on other sites
nelsonr

O que podes fazer é tirar o new form do Application.Run e abrir numa linha antes.

Program.cs:

new FormLogin().Show();
Application.Run();

Assim no FormLogin, podes fazer o this.Close(); depois de abrires outro form, que a aplicação continua a funcionar.

O que tens de fazer é ao fechar o novo form, se quiseres terminar a aplicação tens de fazer Application.Exit() (podes por essa chamada por exemplo no FormClosed event.

 

Espero que ajude

Share this post


Link to post
Share on other sites
BigMachine3

Em vez de fazeres isto:

Form2 f2 = new Form2();
f2.Show();
this.Close();

faz o seguinte:

Form2 f2 = new Form2();
f2.Show();
f1.Hide();

Ao fazeres hide vai te manter o form1 sempre ativo mas escondido.

O que aconcelho a fazer é criar um botao num form qualquer e pores no codigo do botao: Application.Exit();, assim fecha te a aplicacao mesmo tendo forms escondidos.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.