Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-09-2004
Avatar de naker
naker naker is offline
Miembro
 
Registrado: nov 2003
Ubicación: Tandil, BsAs, Argentina
Posts: 12
Poder: 0
naker Va por buen camino
String Grids

hola a todos! bueno, tengo un problemita q no se como solucionarlo...
tengo un string Grid el cual va a creciendo a medida que ingreso datos. El tema, es que yo quisiera hacer que el string grid quede "posicionado" en el ultimo elemento que yo agrego, y no en el primero como me esta sucediendo.
Para agregar un elemento, yo tengo unos TEdit donde se ingresan los datos, y luego presiono un boton donde se carga el String Grid. El tema es q cuando apreto el boton, el elemento se inserta, pero no puedo hacer que quede visualizado el ultimo elemento ingresado...
Bueno, espero q puedan ayudarme!
Desde ya, muchas gracias!!

P.D: Estoy usando Delphi 6
Responder Con Cita
  #2  
Antiguo 02-09-2004
fmonte fmonte is offline
Miembro
 
Registrado: ago 2004
Ubicación: Tandil
Posts: 67
Poder: 20
fmonte Va por buen camino
El Problema que tenes me parece que un problema entre el teclado y la silla.
JEJEJEJE.
Responder Con Cita
  #3  
Antiguo 02-09-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¿Cómo estás insertando elementos en el StringGrid? ¿Con qué método?

// Saludos
Responder Con Cita
  #4  
Antiguo 02-09-2004
Avatar de naker
naker naker is offline
Miembro
 
Registrado: nov 2003
Ubicación: Tandil, BsAs, Argentina
Posts: 12
Poder: 0
naker Va por buen camino
Detalle.Cells[0,indiceGrid]:=Cant.Text;
Detalle.Cells[1,indiceGrid]:=CodProducto.Text;
Detalle.Cells[2,indiceGrid]:=DbGrid.DataSource.DataSet.Fields[1].AsString; //descripcion
Detalle.Cells[3,indiceGrid]:=DbGrid.DataSource.DataSet.Fields[2].AsString; //precio unitario
Detalle.Cells[4,indiceGrid]:=FloatToStr(StrToFloat(Cant.Text)*StrToFloat(DbGrid.datasource.DataSet.Fields[2].AsString)); //subtotal
total.Text:=FloatToStr(StrToFloat(total.Text) + StrToFloat(Detalle.Cells[4,indiceGrid]));
indiceGrid:=indiceGrid+1;
Detalle.RowCount:=indiceGrid;

donde indiceGrid es una variable global que lleva el indice en donde debo insertar el nuevo elemento..
Responder Con Cita
  #5  
Antiguo 02-09-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Bueno pero, las filas nuevas se insertan siempre al final ¿no? Y más que quedarse posicionado en la primera fila se queda en la fila en la que estaba (prueba cambiando de fila antes de insertar una nueva).

En todo caso la propiedad Row del StringGrid te permite colocar la selección en cualquier renglón que desees; en tu caso supongo que algo como:

Código Delphi [-]
Detalle.Row := IndiceGrid;
IndiceGrid := IndiceGrid + 1;

aunque según yo sería lo mismo que

Código Delphi [-]
Detalle.Row := Detalle.RowCount - 1;

Realmento no entiendo el uso de IndiceGrid. En un StringGrid sólo pueden insertarse filas al final.

// Saludos
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


La franja horaria es GMT +2. Ahora son las 13:33:35.


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