Bueno, ahora que ya sabemos la teoría, podemos retomar nuestro componente de conversión de monedas, para añadir los eventos que necesitemos.
Si recordamos lo que hicimos, teníamos un componente que convertía una cantidad origen (de un tipo de divisa concreto) a otra cantidad destino (de otro tipo de divisa diferente).
Cada vez que cambiábamos la cantidad original, se recalculaba el resultado, y cuando cambiábamos el tipo de moneda origen o destino, también se obtenía el nuevo resultado.
Así que tenemos una acción (el cálculo del resultado) que puede ejecutarse por diversas razones.
Supongamos que hemos situado nuestro componente en un formulario, y hemos añadido dos campos de edición (TEdit): uno para el valor origen y otro para el destino. Además, añadimos dos cuadros combinados para que el usuario seleccione con qué tipos de monedas quiere trabajar.
Sabemos que, cada vez que cambie el valor de Edit1, tenemos que actualizar la propiedad “ValorConvertir” de nuestro componente y cada vez que se seleccione un tipo de moneda, cambiar las propiedades “MonedaConvertir” y “MonedaConvertido”.
¿Pero cuándo mostramos el nuevo valor calculado? Podríamos hacerlo en cada uno de esos tres momentos: al cambiar el Edti1 o al cambiar cualquiera de los cuadros combinados.
Pero... ¿Y si tuviéramos un evento que saltase cada vez que se haya calculado el resultado? ¿Nos resultaría útil para mostrar el nuevo valor? Pues podría ser buena idea, ya que simplemente codificaríamos este evento, y si, por cualquier razón, el resultado cambia, el evento se disparará y nuestro código podrá ejecutarse.
Así que, como esta vez somos nosotros los que tenemos la sartén por el mango, vamos a hacerlo así.