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 22-10-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
Manipular data entre StringGrids

"Tolomeo se mudo al Polo Norte"

Última edición por JoseFco fecha: 24-12-2008 a las 12:11:12.
Responder Con Cita
  #2  
Antiguo 22-10-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Cita:
Empezado por JoseFco Ver Mensaje
¿ Existe alguna propiedad que me permita manipular el contenido de una casilla a la siguiente a la derecha o a la izquierda? De existir fuera muy interesante entenderla, de lo contrario pues la tendria que crear por codigo.
Hola Jose, a que te refieres con manipular el contenido de una casilla a la siguiente derecha o izquierda . Que es exactamente lo quieres hacer, digamos que estas en la casilla de la columna 3, que téndría que pasar cuando vas a la casilla de la izquierda o derecha.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #3  
Antiguo 22-10-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
"Tolomeo se mudo al Polo Norte"

Última edición por JoseFco fecha: 24-12-2008 a las 12:11:31.
Responder Con Cita
  #4  
Antiguo 22-10-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Tu lo que quieres es mover el bit (osea la casilla donde estas) tanto a la izquierda como a la derecha. Lo que se me ocurre es que actives la propiedad para poder mover columnas y con eso podras mover las columnas tanto a la izquierda como a la derecha. La propiedad es Options->GoColMoving lo colocas a True.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #5  
Antiguo 22-10-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
"Tolomeo se mudo al Polo Norte"

Última edición por JoseFco fecha: 24-12-2008 a las 12:11:48.
Responder Con Cita
  #6  
Antiguo 23-10-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
"Tolomeo se mudo al Polo Norte"

Última edición por JoseFco fecha: 24-12-2008 a las 12:12:04.
Responder Con Cita
  #7  
Antiguo 23-10-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Lo más fácil es como lo estás haciendo ahora, no creo sea viable andar borrando columnas e insertando nuevas, es más lioso

Código Delphi [-]
procedure Multiplica(gr:TStringGrid);
var i:integer;
begin
  for i:= gr.cols -1 downto 1 do
    gr[i,0] := gr[i-1];
  gr[0,0] := '0';
end;

procedure Divide(gr:TStringGrid);
var i:integer;
begin
  for i:= 0 to gr.Cols -2 do
    gr[i,0] := gr[i+1];
  gr[gr.cols -1,0] := '0';
end;

Creo que el stringgrid tiene la propiedad "Cols" o "ColsCount" no recuerdo bien (no lo uso mucho).

He supuesto que el bit de menos peso está en la columna cero. Si lo tienes al revés, solo intercambia el nombre de los procedimientos, el que multiplica en realidad dividiría y al revés.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #8  
Antiguo 23-10-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
"Tolomeo se mudo al Polo Norte"

Última edición por JoseFco fecha: 24-12-2008 a las 12:12:24.
Responder Con Cita
  #9  
Antiguo 23-10-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
"Tolomeo se mudo al Polo Norte"

Última edición por JoseFco fecha: 24-12-2008 a las 12:12:41.
Responder Con Cita
  #10  
Antiguo 23-10-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.557
Poder: 25
egostar Va camino a la fama
Hola amigo,

Y no te sirve usar la funcion ReverseString() ????

Código Delphi [-]
uses StrUtils;

procedure TForm1.Button1Click(Sender: TObject);
var
  Cadena: string;
begin
  Cadena := '76543210';
  ShowMessage(cadena+#13+ReverseString(cadena));
end;

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #11  
Antiguo 23-10-2008
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 23
BlueSteel Va por buen camino
Wink

Hola JoseFco

tambien puedes utilizar el NiceGrid, si bien no estoy seguro que pueda hacer lo que tu dices de una manera fácil... es mejor que el StringGrid....

Puedes ver sus características y descargarlo desde aquí...

Salu2
__________________
BlueSteel
Responder Con Cita
  #12  
Antiguo 23-10-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
"Tolomeo se mudo al Polo Norte"

Última edición por JoseFco fecha: 24-12-2008 a las 12:12:59.
Responder Con Cita
  #13  
Antiguo 24-10-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Si necesitas tanto control sobre las columnas, es mejor como lo estás haciendo ahora, sin bucles ni nada.

El bucle "for" lo hice pensando en la forma más rápida, pero si tenemos que controlar varias excepciones, al final el código se acaba ensuciando mucho y una modificación es más complicada.

Lo que sí te aconsejo es crear rutinas que le pases el Grid como parámetro, así no tienes que duplicar código. No sé si será viable, tú verás:

Código Delphi [-]
procedure TForm1.Button5Click(Sender: TObject);
begin
  Divide(ACC);
end;

procedure TForm1.Divide(elGrid:TStringGrid);
var tmp:string;
begin
tmp := elGrid.Cells[7,0]; // para no perderlo
elGrid.Cells[7,0] :=elGrid.Cells[6,0];
elGrid.Cells[6,0] :=elGrid.Cells[5,0];
elGrid.Cells[5,0] :=elGrid.Cells[4,0];
elGrid.Cells[4,0] :=elGrid.Cells[3,0];
elGrid.Cells[3,0] :=elGrid.Cells[2,0];
elGrid.Cells[2,0] :=elGrid.Cells[1,0];
elGrid.Cells[1,0] :=elGrid.Cells[0,0];
elGrid.Cells[0,0] := tmp;
end;
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #14  
Antiguo 24-10-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
"Tolomeo se mudo al Polo Norte"

Última edición por JoseFco fecha: 24-12-2008 a las 12:13:17. Razón: No vi la operacion donde salvavas el contenido.
Responder Con Cita
  #15  
Antiguo 24-10-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
"Tolomeo se mudo al Polo Norte"

Última edición por JoseFco fecha: 24-12-2008 a las 12:13:30.
Responder Con Cita
  #16  
Antiguo 24-10-2008
JoseFco JoseFco is offline
Baneado
 
Registrado: dic 2007
Posts: 1.861
Poder: 0
JoseFco cantidad desconocida en este momento
"Tolomeo se mudo al Polo Norte"

Última edición por JoseFco fecha: 24-12-2008 a las 12:13:45.
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
Missing data provider or data packet mcalmanovici Providers 1 11-09-2007 05:55:15
Compatibilidad entre aplicaciones ASP.NET entre Delphi 8 .Net y Visual Studio.Net kenyamg .NET 0 21-02-2007 07:30:33
duda sobre stringgrids federiconqn21 Varios 3 24-07-2006 18:04:35
Data-aware o no data-aware... esa es la cuestión! __marcsc Debates 22 09-07-2006 21:32:36
StringGrids y Forms Distorsionadas karocs Varios 4 17-08-2004 18:02:45


La franja horaria es GMT +2. Ahora son las 01:46:02.


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