Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Como hacer que mi formulario se ejecute solo una vez (https://www.clubdelphi.com/foros/showthread.php?t=79971)

rufo 25-08-2012 00:15:47

Como hacer que mi formulario se ejecute solo una vez
 
Hola amigos buenas tardes, espero me ayuden o me digan como hacerle ya que nunca he hecho esto y estoy en busca de la luz, bueno resulta que tengo 2 formularios en el cual el primero quiero que cuando ejecute mi aplicacion pero al volverve ejecutar mi aplicacion ahora se ejecute el 2 formulario y el primero ya no lo muestre, ¿como lo hago o que puedo hacer?

Uso delphi 2007

Gerson12 25-08-2012 00:33:14

disculpa pero no te entendi muy bien lo q entendi es q no quieres que tu programa se ejecute dos ves o lo q no quieres q la ventana form se ejecute dos veces??

rufo 25-08-2012 00:51:00

No, que mi programa se ejecute pero como tengo 2 formularios y uno solo quiero que se ejecute solo una vez y al cerrar mi programa y al volver ejecutarlo quiero que se ejecute el 2 formulario, y asi cada vez que ejecute mi programa se vuelva ejecutar el 2 formulario.

ecfisa 25-08-2012 01:08:36

Hola rufo.
Cita:

tengo 2 formularios en el cual el primero quiero que cuando ejecute mi aplicacion pero al volverve ejecutar mi aplicacion ahora se ejecute el 2 formulario y el primero ya no lo muestre
Vas a tener que explicarlo de otro modo, realmente no se entiende que es lo que buscas hacer...

Saludos.

rufo 25-08-2012 01:23:23

Ok el programa que intento hacer es que el usuario genere un nombre Usuario y una contraseña y esta se guarda en una tabla, entonces al ejecutar de nuevo el programa ya no quiero que aparesca el primer formulario donde se genero el nombre del usuario y la contraseña, si no quiero que aparesca el 2 formulario que seria ya loguearse con su nombre de usuario y su contraseña para que accese a un sistema, espero me halla entendido y gracias de nuevo.

MartinS 25-08-2012 01:40:51

Y como harías para diferenciar la ejecución de alguien que ya esta logueadó, es decir, si se registro y cierra el programa, luego lo abre nuevamente entonces como se supone que el que hizo doble clik en la aplicación es el mismo que se logueo antes o uno nuevo. Creo que no entiendo lo que necesitas?


O bien podrías poner en el mismo form de logueo un botón para registrarse

ecfisa 25-08-2012 01:59:49

Hola rufo.

Si si, ahora esta mas claro.

Creo que tendrías que usar la lógica inversa. Primero pedir el nombre de usuario y contraseña, luego verificar la existencia en la tabla y si no existe, mostrar el formulario para que pueda registrarse.

Del otro modo, el problema que te menciona MartinS, es ineludible...

Saludos.

rufo 25-08-2012 02:13:14

Claro amigo ecfisa como se guardaria en una tabla el usuario y su contraseña para accesar al sistema pero es donde esta ahi mi problema como hacer lo que tu me mencionas la logica inversa como poder plantearlo...

champy 25-08-2012 02:35:57

Podrías hacerlo así, por ejemplo.

Código:

Inicio

Conectar a la base da datos

    Si Existe algún usuario entonces
        Mostrar Form de Login
    Si no
        Mostrar Form para registrase


Fin


MartinS 25-08-2012 05:36:00

Hola nuevamente rufo: Te voy a exponer un idea, puedes tomarla o no:

1) Imaginate los usuarios de tu sistema divididos de acuerdo a sus privilegios (Administradores, Operadores y solo consulta). Podrias incluir en algun campo el tipo de usuario.
2) Ahora imaginate un menu de usuario con las opciones - Definir/Editar usuario - Cambiar contraseña - cerrar sesion.
3) Cuando ingresas al sistema podrias poner una pantalla de login (como las que seguramente diseñaste) con las opciones de que tipo de usuario accede (Por ejemplo con un RadioGroup - Administrador, Operadores o consultas solicitando los correspondientes nombres y passwords) dando asi privilegios a determinados usuarios. Podrias implementar un combo que lista los nombres de los usuarios de acuerdo a su privilegio (De acuendo al Radio) dejando solamente un edit o similar para que introduzcan su contraseña.
a) En el caso que ingrese un Administrador, el menu usuarios se habilitaria completo, es decir, que puede definir nuevos usuarios del sistema, editarlos y cambiar su contraseña ademas de operar el sistema.
b) En el caso que ingrese un operador, solo se habilitaria la opcion de cambio de contraseña (Si mismo) y no le damos la posibilidad de definir un usuarios (Se lo atribuimos unicamente al administrador el cual asignara una contraseña y nombre de usuario que transmitira a la persona que corresponda - Despues este va a poder actualizar la contraseña a su gusto).
c) en el ultimo solo habilitamos a alguien para que pueda realizar consultas sin modificar nada.

De esta manera podrias hacer un seguimiento de cada usuario que ingresa al sistema limitando el acceso a modulos que no serian convenientes que operen o bien que se registren indefinidamente (ya sea porque olvidaron el usuario o contraseña) .-
Habilitando las variables necesarias podrias cargarlas con el id de cada usuario que esta operando y asignar ese id junto con la fecha a distintas tablas, por ejemplo en clientes el campo UltimaEdicion que guarda la fecha e IdUsuario de quien fue.-

Si bien no se específicamente para que necesitas un loqueo o bien como lo tenias pensando solo te expongo una idea que puedes implementar o no.-

Saludos y suerte ^\||/


La franja horaria es GMT +2. Ahora son las 16:35:17.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi