FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Sobre ventana de Password
Quiero que en mi aplicación me aparezca antes que la ventana principal de mi programa una form que pida nombre de usuario y contraseña, que controle la entrada de un usuario al mismo.
Que propiedades tengo que darle ha ésta para que haga lo que quiero?, en que evento?, creo que tendría que crearla de forma modal, pero la verdad es que probé varias maneras pero no funciona. Gracias. |
#3
|
|||
|
|||
Sobre ventana de Password
Cadetill:
estuve viendo el hilo al que te referias pero no me quedó claro la parte cuando creo el fromulario de forma modal, ya que me da error cuando ejecuto el programa. El código que puse es el siguiente: Código:
Begin //otras sentencias: Creaciones de Form etc,... ... ... ... FAcceso:=FAcceso.Create(Application); FAcceso.ShowModal; Application.Run; end. 'Cannot make a visible windows modal' Gracias. Silvio.- |
#4
|
|||
|
|||
Sobre ventana de Password
Perdón transcribí mal ésta línea:
Código:
FAcceso:=TFAcceso.Create(Application); |
#5
|
||||
|
||||
Cita:
// Saludos |
#6
|
|||
|
|||
Sobre pregunta de Password
Román:
si la propiedad Visible está en Flase. Lo probé de las dos formas. Silvio.- |
#7
|
||||
|
||||
Y el FormStyle, es un fsNormal???
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#8
|
||||
|
||||
Es conveniente que revises también el código del evento OnCreate de tu form, no sea que alli lo estes poniendo visible o llamando a su método show...
Hasta luego.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#9
|
|||
|
|||
Sobre ventana de password
Las propiedades del Form están así:
FormStyle:=fsNormal Visible:=True Project -> Options -> Auto-Create Form. Silvio.- |
#10
|
||||
|
||||
En primer lugar, quitalo de los Autocreate Forms, pues tengo entendido que las estas creando "a mano" con FAcceso:=FAcceso.Create(Application);
Ademas, pone su propiedad visible a False. Salvo que estes alterando el valor de esta propiedad, o llamando a su método Show/ShowModal mas de una vez, no tendrias porque obtener el mensaje de error.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#11
|
|||
|
|||
Sobre ventana de Password
Hola, ya solucioné el problema de la ventana modal, pero ahora lo que no puedo hacer es controlar la entrada al programa ya muestro los mensajes en caso de el susuario o la pass sean incorrectas pero entra lo mismo.
El código de mi ventana modal es: Código:
procedure TForm23.EntrarClick(Sender: TObject); begin Modelodatos.TblLogin.Active:=True; If Modelodatos.TblLogin.Locate('Usuario',User.Text,[]) Then begin If ModeloDatos.TblLogin.FieldByName('Clave').AsString<>Pass.Text Then ShowMessage('Clave Inconrrecta'); Pass.SetFocus; end else ShowMessage('usuario inexistente'); User.SetFocus; end; Silvio.- |
#12
|
||||
|
||||
Pero aqui debiera quedarse en la misma ventana, y no "pasar" como vos le decis... aun cuando el usuario y password sean correctos. Otra vez creo que no estas dando la información completa.
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#13
|
|||
|
|||
Pero, es que, a ver, el control de entrar o no en la app lo has de hacer desde el DPR del proyecto, NO desde el form que lanzas para capturar user/pass
Mirate nuevamente el hilo que te mencioné para ver como controlar eso |
#14
|
|||
|
|||
Sobre ventana de Password
Si el usuario y la pass son correctas también entra al programa..., dije que lo hacía SIEMPRE.
Y desde el proyecto como tengo que hacerlo porque al hilo donde explica lo hace igual. Es: Código:
var n:Variant; begin Application.Initialize; Application.CreateForm(TForm1, Form1); Application.CreateForm(TModeloDatos, ModeloDatos); Application.CreateForm(TForm22, Form22); ModeloDatos.TblEmpresa.Active:=True; n:=ModeloDatos.TblEmpresa.FieldValues['Nombre']; Form1.Caption:='BIENES DE USO 1.0'+' - '+n; ModeloDatos.TblEmpresa.Active:=False; Form23:=TForm23.Create(Application);// lo creo Form23.ShowModal; //y lo muestro.- Application.Run; end. Silvio.- |
#15
|
|||
|
|||
no se tu, pero......
Cita:
Cita:
|
#16
|
|||
|
|||
Sobre ventana de Password
Si es cierto, no era ese el código que yo había visto, perdón.-
Voy a probar con ese. Gracias. Silvio.- |
#17
|
|||
|
|||
Sobre ventana de Password
Cadetill:
por que cuando escribo el código: Código:
begin Application.Initialize; Application.CreateForm(TModeloDatos, ModeloDatos); Application.CreateForm(TForm22, Form22); ModeloDatos.TblEmpresa.Active:=True; n:=ModeloDatos.TblEmpresa.FieldValues['Nombre']; Form1.Caption:='BIENES DE USO 1.0'+' - '+n; ModeloDatos.TblEmpresa.Active:=False; Form23:=TForm23.Create(Application); Form23.ShowModal; if Form23.ShowModal=mrYes then begin Application.CreateForm(TForm1, Form1); Application.Run; end Gracias. Silvio.- |
#18
|
|||
|
|||
Cita:
Cita:
|
#19
|
|||
|
|||
sobra ventana de Password
Podrían decirme si éste código está bien o le falta algo, está asociado al botón que tengo en mi ventana de password, el cual tiene en la propiedad ModalResult el valor mrYes;
Código:
procedure TForm23.EntrarClick(Sender: TObject); begin Modelodatos.TblLogin.Active:=True; If Modelodatos.TblLogin.Locate('Usuario',User.Text,[]) Then begin If ModeloDatos.TblLogin.FieldByName('Clave').AsString<>Pass.Text Then ShowMessage('Clave Incorrecta'); Pass.SetFocus; end else ShowMessage('usuario inexistente'); User.SetFocus; end; Silvio.- |
#20
|
||||
|
||||
Este es el mismo código que el expuesto en el mensaje #11 (por tí) y sinceramente el compilador será más eficaz que nosotros para detectar si está bien o mal.
// Saludos |
|
|
|