Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Problemas con el orden de los Form (https://www.clubdelphi.com/foros/showthread.php?t=76812)

DOS 29-11-2011 02:19:18

Problemas con el orden de los Form
 
Bueno aca estoy con un nuevo inconveniente :(
Resulta que tengo un sistema en donde en el Form1 uno pone la clave de acceso y entra al menu principal si esta bien (Form2), pero resulta ahora que cuando hago correr el programa habre el 1 y el 2 la mismo tiempo y el 2 sobre el 1, asi que ni hace falta ingresar una clave que ya se entro al menu :(
Al principio no sucedia esto, pero debo haber tocado algo que lo cambio y no se que es y no creo que sea en la codificacion.
Si a alguien se le ocurre algo de que puede ser, lo agradecere muchisimo.

Caral 29-11-2011 02:27:27

Hola
Mi madre decia: Si no sabes no toques :D:D:D
A ver:
Tienes que tener en cuenta la forma en que llamas a los form, puede ser con un simple show lo que significa que ya fue creado o crearlo en el momento en que se necesite, que es lo mas recomendable.
Abre delphi
En Projetc, options te saldra una pantalla.
Main form es el form que inicia cuando ejecutas el programa.
en auto create estan los form que se crean cuando inicia el programa y en avaliable estan los forms que se crearan cuando se necesiten.
Si los form se crean al inicio tienes que colocar en el main el form que necesites y tienes que verificar que esten en el orden en el que tu los necesitas.
Como ves, para evitarse esto es mejor crearlos cuando uno quiere y no todos al principio, ademas esto (crearlos cuando uno quiera) consumira menos memoria.
Saludos

DOS 29-11-2011 02:44:44

Gracias nuevamente Caral, pero ya me fije y esta bien.

DOS 29-11-2011 02:47:26

Despues tambien tengo esta codificacion en el primer Form

Código Delphi [-]
var
  Form1: TForm1;
  Intentos: Integer;

implementation

uses Unit2;

{$R *.dfm}

// procedimiento nuevo, abre el form 2 y esconde el form 1
procedure abre;
begin
 Form1.Hide;
 Form2.ShowModal;
end;

// procedimiento del boton.
procedure TForm1.Button1Click(Sender: TObject);
var
    apellido, contrasena: String;
    ClaveCorrecta: Boolean;
begin
    apellido := Edit1.Text;
    contrasena := Edit2.Text;
    ClaveCorrecta := False;
    edit1.Clear;
    edit2.Clear;
    Table1.First;
    edit1.SetFocus;

    while Table1.eof = false do
    begin
        if (Table1.FieldByName('Apellido').AsString = apellido) and
           (Table1.FieldByName('Clave').AsString = contrasena) then
        begin
        abre;             // llama al procedimiento abre,
        Form2.free;    //  el form 2 se cierre...
        Application.Terminate;   // aqui termina el programa
        end;
        Table1.Next;
    end;
    if not ClaveCorrecta then
    begin
        ShowMessage('Clave o Nombre Incorrectos');
        Inc(Intentos);
        if Intentos >= 3 then
        begin
        ShowMessage('Contacte con el administrador');
        Application.Terminate;
        end;
    end;

end;
 procedure TForm1.Button2Click(Sender: TObject);
begin
close; //sale del sistema
end;

procedure TForm1.Button3Click(Sender: TObject);//boton provisorio para evitar poner la clave
begin
form1.Hide;
form2.show;
end;

end.

Caral 29-11-2011 02:50:10

Hola
Y esta bien mal......:D:D:D
Amigo, como puedes ver, estas creando TODOS los forms al inicio, osea, debes de tener el programa muy lento a la hora de iniciar.
Te aconsejaría que los crees cuando los necesites, es algo mas de trabajo, pero es mejor.
Por otro lado:
Si te salen dos forms al inicio es un problema de codigo, aunque digas que no lo crees.
Si necesitas ayuda envíamelo y lo corrijo con gusto.
Saludos

DOS 29-11-2011 02:55:16

Pues me seria de gran ayuda, por otro lado tienes razon en lo que tu dices, pero es asi como me lo enseñaron no vimos la forma de crearlo a medida que se necesiten:confused:, aunque supongo que no debe ser muy dificil.
Por otro lado como te lo envio :D

Caral 29-11-2011 02:57:40

Hola
Creo que ya tienes suficientes mensajes para colocarlo aqui.
Quitale el exe (para que no sea muy grande) y pon todos los form y la Base de datos en un zip y lo subes aqui.
Si no puedes enviame un mensaje privado y te doy mi correo.
Saludos

DOS 29-11-2011 03:14:06

No pude pero aca te dejo el Link, muchas gracias.
http://www.filefactory.com/file/cf5d9fc/n/Bar.rar

Caral 29-11-2011 03:18:31

Hola
No lo puedo bajar.
Enviamelo a mi correo, revisa el mensaje que te envie.
Saludos

DOS 29-11-2011 03:25:04

Ok, ya te lo envie :D


La franja horaria es GMT +2. Ahora son las 07:00:03.

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