FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Sumar 2 valores ubicados en 2 celdas de sendos grids en diferentes ventanas.
Tenemos 2 ventanas hijas que descienden del mismo ancestro, son idénticas en todo solo que la información que muestran puede variar por cuestion de fechas. Ambas contienen un grid que muestra exactamente las mismas columnas. ¿Como se podría hacer que al seleccionar una celda de una de ellas y luego una de la otra ventana podamos hacer cualquier cálculo? (suma, resta, etc.) El como acceder al valor de la celda es trivial pero estoy atorado en como manejar los mensajes pues es obvio que quien haría el cálculo sería la ventana padre. Es una idea loca que se me ocurrió, basado en lo que hace Excel 2007 que seleccionando celdas nos da su suma o cualquier otra operación
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#2
|
||||
|
||||
Hola.
No sé si he pillado lo que quieres decir pero si tuvieras dos variables en las que fueras guardando el valor de la celda de uno y otro grid según vas picando en uno y otro podrías hacer las operaciones entre ellas, ¿no?. Saludos
__________________
Be water my friend. |
#3
|
||||
|
||||
Tampoco entiendo bien la pregunta, ¿dices que tienes dos ventanas hijas donde están los datos y que el cálculo debe hacerlos la ventana padre?.
|
#4
|
||||
|
||||
Digamos que son dos ventanas hijas, cada una tiene un grid sencillo digamos de 3 x 3 (o sea nueve celdas) con valores numericos cada una. La idea es que al ser amodales podemos seleccionar una u otra ventana. Ahora bien, digamos que selecciona una celda cualquier en cada ventana, ¿Como podría hacer el cálculo de la suma (o cualquier otra operación) de las celdas seleccionadas? Habia pensado en que se mandara un mensaje a su padre para indicar: padre, que me han seleccionado un celda con este valor x y el padre se encargara de mantener el total de la operación, si cerramos la celda o seleccionamos otra cosa el mensaje sería, "padre, ya no me han seleccionado nada" y entonces restamos el valor (en caso de suma). El chiste es que pueda hacer con cualquier número de ventanas hijas.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#5
|
||||
|
||||
mmm creo entender lo que quieres Azid...
Según entiendo el problema, yo lo que haría sería implementar un mensaje de Windows a cómo sugieres y luego en el padre hacer la suma... por ejemplo así: en las ventanas hijas, al seleccionar una celda o cerrar la ventana:
En el formulario padre:
Saludos! Espero que hallas entendido mi pseudo código y te ayude a resolver el problema. |
#6
|
||||
|
||||
Hola AzidRain.
Siempre que todos los StringGrids (que haya en cada MDIChild) tengan el mismo nombre, otra opción que se me ocurre es: MDIForm Si se tratara de DBGrids cambiando el cast funciona igualmente (con SelectedField). La cosa se complicaría un poco si también existen campos no numéricos... Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 29-12-2011 a las 05:06:29. Razón: Corregir carita en codigo (:D) |
#7
|
||||
|
||||
Gracias a Chris y eficsa ya con sus ideas me aclaran lo que pensaban implementar, amabas me sirven. En cuanto implemento posteó como quedo al final. Sin duda a alguien le va a servir y le va a ahorrar tiempo ya que es bastante útil y evita estar haciendo reportes adicionales solo para saber una cifra.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#8
|
||||
|
||||
Mas facil todavia
imagino que usas delphi.
simplemente relaciona la Formas, osea menu File - Use unit y selecciona las unidades que ocupas que trabajen juntas, facil y rapido. de ahi agregas ya sea variables o algun componente como un texedit en la forma padre para cada dato que mandes en las formas hijas que tengan el grid le pones en el evento que use x ejemplo procedure Grid.oncellclic //si agragaste componente edit formapadre.texedit1.text:=grid.value; //si es variable formapadre.variable:=grid.value; y asi puedes mandar y tomar datos de ambas formas. el codigo no es tal como va, solo es para ilustrar
__________________
No hay que Postear primero, hay saber Buscar.. |
#9
|
||||
|
||||
Chartres, no es eso de lo que se trataba, es un poco mas complejo, lee bien las aportaciones de eficsa y Chris. ¿Has visto como en en excel si seleccionas varias celdas, automáticamente te da su suma (o cuenta o lo que sea) en un espacio de la ventana? Pues es lo que quiero implementar. Como lo han planteado ellos, es la forma más válida de hacerlo. Por otro lado mencioné que se trata de formas tipo MDI por lo que todas descienden de la misma clase por lo que para "comunicarse" con la forma padre no tienen de otra mas que con mensajes pues no tienen una variable que las instancíe directamente, además no queremos la suma de las celdas donde se hagan click, solo de las que esten seleccionadas.
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
2 ventanas diferentes, 2 monitores diferentes | Milperrimo | Varios | 12 | 02-10-2008 04:12:32 |
Cómo Sumar Celdas de una Tabla Word | abril0404 | Servers | 0 | 10-03-2008 13:49:45 |
Ayuda en programa con grids y guardar valores | onlytk | Varios | 3 | 11-11-2005 20:08:28 |
Celdas de colores diferentes en un TStringGrid | phyera | Gráficos | 2 | 14-09-2003 19:06:26 |
Sumar Celdas de un DBgrid | barrauda | Conexión con bases de datos | 2 | 05-06-2003 16:25:23 |
|