Ver Mensaje Individual
  #11  
Antiguo 27-02-2012
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Reputación: 25
Delphius Va camino a la fama
Me encanta cuando los usuarios vienen, tiran una pantalla y luego esperan que se les caiga de arriba.
Lo bueno es que al menos te hemos sacado algo de tu parte, y diste un comienzo.

Voy a hacer de cuenta que ese código no lo he visto... Con todo respeto, ¡Que te lo complicas demasiado! conversiones de un tipo a otro, código por demás repetido,
Se que para una primera aproximación, y que el sistema tampoco es para mucho, y que al parecer eres iniciado puede ser una posibilidad; pero es que puede mejorarse mucho, e incluso añadir controles que te pasas de largo.

Yo te he tirado algunos conceptos que te pueden dar mucho alivio:
El uso de records, un arreglo o array y unos frames (quizá esto último es lo que más te puede costar entender; busca en los foros sobre frames).

Ahora respecto a tu nueva duda, la verdad es que no se te entiende demasiado. ¿Porqué no piensas tus palabras y te explicas mejor? Eso hará más fácil asesorarte.

Tengo una duda:
Y si necesitas de más "items" que los que pusiste, cómo te las ingenias? En la foto hay lugar para 10 items. ¿Van a ser como máximo 10, o pueden ser más? ¿Una cantidad no determinada quizá?
De ser indeterminada, entonces con más razón debe llevarse el problema por otro lado e implementar un proceso que permita extenderse según se requiera.

La propuesta del uso del array dinámico y del frame va justo en este sentido. El array nos permite llevar la estructura en cuanto a la lógica; y el frame en cuanto a la interfaz.
Explico lo del frame: Es como un form, plantilla, en que se van a disponer los elementos que hacen a un ítem. Luego, se crean tantas instancias de este frame como items se necesiten.

En el frame es posible incorporar código que nos permita llevar el control necesario para operar adecuadamente con los valores, y además es donde se llenan justamente la posición i-ésima del arreglo (siendo i el item correspondiente). Un método de interés, de nombre hipotético UpdateSubTotal, lo que hace es recalcular el subtotal ante cualquier cambio en el precio o cantidad.
Por consiguiente, indirectamente este método manda a llamar a un UpdateTotal que recalculará el total. Este UpdateTotal puede, y yo recomiendo, que esté en el form.

El uso del arreglo permite hacer los cálculos sin complicarse la vida de utilizar StrToXXX y sus inversas. Una vez que se guardan los datos en el la operatoria es elemental.

DEJA la interfaz para cuestiones de interfaz... piensa en un arreglo.

Saudos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita