Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-08-2007
Avatar de david_uh
david_uh david_uh is offline
Miembro
 
Registrado: may 2007
Ubicación: Arequipa, Perú
Posts: 227
Poder: 17
david_uh Va por buen camino
optimizar carga de lista y tpagecontrol!!!!!!!

Hola foro
Estoy llenando un listbox con 8 mil entradas y este esta ubicado dentro de un TPageControl, peroal momento de la carga parpadea y primero aparece4 el grid luego el page controly despues los demas controles
la carga de la lista se hace en l evento create del form.
alguien sabe como optimizar esto o hacer que nohayqa tanto parpadeo, es como si aparece unaversion incomplete delfor y despues la version completa, realmente desagradable

gracias por cualquier aporte
__________________
Yo se que muchas veces te paso ESTO
Responder Con Cita
  #2  
Antiguo 08-08-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
Cual es el codigo con el cual cargas el ListBox?
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #3  
Antiguo 08-08-2007
Avatar de david_uh
david_uh david_uh is offline
Miembro
 
Registrado: may 2007
Ubicación: Arequipa, Perú
Posts: 227
Poder: 17
david_uh Va por buen camino
Ok es este y lo llamo en el evento create

Código Delphi [-]
procedure Tfrm_IngPedidos.SetListas();
var ZListas: TZReadOnlyQuery;
    strSQL: String;
    i: Integer;
    m: Integer;
begin
        cbo_Cliente.Clear; 
        cbo_Vendedor.Clear;
        cbo_Producto.Clear;
        cbo_Cantidad.Clear;
           // CLIENTES *******
        strSQL := 'SELECT id,Cliente,Direccion FROM qry_clientes ORDER BY Cliente';
        ZListas := TZReadOnlyQuery.Create(nil);
        ZListas.Connection := DM.ZConnectionRimacy;
        ZListas.SQL.Text := strSQL;
        ZListas.Open;
        //SetLength(arrDirecciones,ZListas.RecordCount);
        //i := 0;
        while not ZListas.Eof do                //
        begin
            cbo_Cliente.AddItem(ZListas['cliente'],
               pointer(ZListas.FieldByName('id').AsInteger));
            lbox_Direcciones.AddItem(ZListas.FieldByName('Direccion').AsString,nil);
            //Inc(i);
            ZListas.Next;
        end;
        strSQL := 'SELECT * FROM qry_vendedores';
        ZListas.SQL.Clear;
        ZListas.SQL.Text := strSQL;
        ZListas.Open;
        while not ZListas.Eof do
        begin
            cbo_Vendedor.AddItem(UpperCase(ZListas['Vendedor']),
                           pointer(ZListas.FieldByName('Id').AsInteger));
            ZListas.Next;
        end;
        //productos
        strSQL := 'SELECT * FROM qry_resumenprodfullfields';
        ZListas.SQL.Clear;
        ZListas.SQL.Text := strSQL;
        ZListas.Open;
        while not ZListas.Eof do
        begin
            cbo_Producto.AddItem(ZListas.FieldByName('PROD').AsString, //nomproducto
                          pointer(ZListas.FieldByName('ID').AsInteger));   //clave
            ZListas.Next;
        end;
        //cantidades
        with cbo_Cantidad do
        begin
             m := 2;
             for i := 1 to 1000 do
             begin
               Items.Add( IntToStr(i) );
               arrFact[i] := i;
             end;
             for i := 1 to 6  do
             begin
               Items.add('1/' + IntToStr(m));
               arrFact[1000 + i] := 1 / m;
               m := m * 2;
             end;
        end;
        strSQL := 'SELECT * FROM tblsispago';
        ZListas.SQL.Clear;
        ZListas.SQL.Text := strSQL;
        ZListas.Open;
        while not ZListas.Eof do
        begin
           cbo_SisPago.AddItem(ZListas.Fields[1].AsString,pointer(ZListas.Fields[0].AsInteger));
           ZListas.Next;
        end;
        ZListas.Close;
        ZListas.Free;
end;
__________________
Yo se que muchas veces te paso ESTO
Responder Con Cita
  #4  
Antiguo 08-08-2007
Avatar de eduarcol
[eduarcol] eduarcol is offline
Miembro Premium
 
Registrado: ago 2003
Ubicación: En los estados Zulia y Merida de Venezuela
Posts: 4.151
Poder: 25
eduarcol Va por buen camino
y porq no utilizas los dblookupcombobox????
__________________
...Yo naci en esta ribera del arauca vibr@d0r
Soy hermano de la espuma,
de la garza, de la rosa y del sol...
Viva Venezuela
Responder Con Cita
  #5  
Antiguo 08-08-2007
Avatar de david_uh
david_uh david_uh is offline
Miembro
 
Registrado: may 2007
Ubicación: Arequipa, Perú
Posts: 227
Poder: 17
david_uh Va por buen camino
si lo he intentado pero la aplicacion se pone re-lenta ademas almoento de selelcionar un cliente no permite hacer una busqueda incremental osea no me da la flexibilidad de un combo:
gracias por responder
__________________
Yo se que muchas veces te paso ESTO
Responder Con Cita
  #6  
Antiguo 08-08-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
Vaya¡¡¡, ¿Cual de todas esas listas es de la que estamos hablando?

Voy a cojer cualquiera, sin tratar de cambiar lo que ya tienes:

Suponiendo que es esa que se llama lbox_Direcciones, entonces luego de lbox_Direcciones colocas
Código Delphi [-]
Application.ProcessMessages
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #7  
Antiguo 08-08-2007
Avatar de david_uh
david_uh david_uh is offline
Miembro
 
Registrado: may 2007
Ubicación: Arequipa, Perú
Posts: 227
Poder: 17
david_uh Va por buen camino
ok ya lo solucione, asi por lo menos ya no aparece ese pantallazo desagradable

gracias....
__________________
Yo se que muchas veces te paso ESTO

Última edición por jhonny fecha: 08-08-2007 a las 21:19:22. Razón: Para corregir la escritura
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
TPageControl Neiro SQL 4 06-10-2006 22:25:57
Fondo en TPageControl fabianmk OOP 4 02-10-2006 13:23:46
Cambiar de pagina de un TPageControl mrmanuel OOP 13 29-04-2004 13:31:45
TPageControl. Cambiar Captions adebonis Varios 2 23-12-2003 09:25:26
TpageControl agora18 Varios 6 17-10-2003 01:04:43


La franja horaria es GMT +2. Ahora son las 18:40:24.


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
Copyright 1996-2007 Club Delphi