Crear procedimiento !!!
Holas amigos de este foro:
Lo que me propongo es lo siguiente: Este código lo repito en casi todos los formularios en el evento FormShow.
Intento hacer un procedimiento en el DM (Data Module) para llamarlo desde cualquier lugar, pero no hallo cómo hacerlo ya que no se como referirme a cada uno de los formularios. nota: A los formularios les asigno memoria dinámica. gracias de antemano saludos Ledian |
Ese código lo tienes que poner en el DataModulo correspondiente y luego hacer un "Uses", en cada formulario en donde pienses utilizarlo y despues símplemente llamarlo por su nombre:
y en los formularios, símplemente:
Un Saludo. |
Error !!!
Al crear el procedimiento en el Data Module da el error undeclared identifier:'ComboBox1' y tampoco puedo decir
por que va a ser usado no solo por TallerForm, sino por varios formularios. Espero que me hallan entendido ahora. Gracias de todas formas. Saludos Ledian |
Está claro, creo que lo que puedes hacer es pasar el combo como parámetro del prcedimiento. Entonces:
y para llamarlo desde el form
Saludos. |
Continua el Error !!!
Hola amigos:
Despues de guiarme por el consejo de yusnerqui me da el siguiente error: Undeclared identifier: TComboBox Alguien pudiera ayudarme por favor. gracias Saludos Ledian. |
Cuando te de un tipo de error como ese, busca la unidad donde está definido en la ayuda de delphi y ponla en el uses del formulario o Datamodule. En este caso tienes que añadir en el uses de tu TDataModule la unidad 'stdCtrls'.
|
ojo
Debes declarar la unit StdCtrls en el uses de tu DM.
Saludos |
Caramba Basti te me adelantaste, jejeje.
saludos |
Casi lo logramos!!!
Amigos:
Ya no da el error, magnifico. He aprendido mucho aca con ustedes hoy, pero ... a la hora de llamar al procedimiento en cualquiera de los formularios me da el error undeclared identifier:'Carga_Cuadro_Combinado'. Les aclaro que tengo en uso el DM Con otra ayuda soluciono el problema. Saludos Ledian |
Pusiste la declaración del procedimiento en la sección public del DataModule?
Saludos... |
Aun no lo logro !!!
Hola de nuevo
al poner la declaración del procedimiento en la sección public del DataModule
Me genera el siguiente error: Unsatisfied forward or external declaration: 'TMiDataModulo.Carga_Cuadro_Combinado' ¿Qué estoy haciendo mal :confused: Saludos.. Ledian |
Cita:
TMiDataModulo.Carga_Cuadro_Combinado Saludos. |
El error persiste !!!
Tienes razon fer21unmsm pero eso solo fue un error a la hora de transcribir el mensaje de error. Ruego que me disculpen.
ya lo corregi mas arriba. Ahora por favor alguien me ayuda... gracias de antemano saludos Ledian. |
Tienes implementada en la sección implementation de la unidad el código del procedimiento Carga_Cuadro_Combinado? Si no es así, es por eso que te sale ese error...
Saludos... |
y ahora que ?
No se si es a este orden al que te refieres.
mi pregunta ahora es como poner el procedure publico Ledian. |
En la implementación del procedimiento tienes que ponerle TMiDataModulo antes, ya que pertenece a esa clase:
procedure TMiDataModulo.LLena_Provincia(MyCombo:TComboBox); |
bye
Amigos lo siento. Estoy al darme por vencido. Lo he probado pero solo me funciona para esa unit, no he logrado poner publico el procedimiento.
grasias a todos y hasta la vista. |
Un Poquito mas !!!
Amigos estube leyendo en foros viejos donde dicen:
Cita:
Bye Ledian. |
Haz un clic sobre la palabra Tcombobox (en tu código, no en la ventana de errores), pulsa F1 y te dirá el "uses" que necesitas.
Saludos |
Veamos, lo primero es recomendarte que si vas a programar en delhi no lo hagas inpíricamente, sino que consigas un tutorial o libro que te instruya.
En cuanto al problema que originó este hilo, trataré mostrarte mediante un ejemplo: Tu datamódulo originalmente se verá más o menos parecido a esto:
Fíjate que despues de la palabra reservada Type dice TDM, esto es porque le he puesto como nombre al DataModule DM. A continuación en forma de comentarios te explico las sesiones:
Bueno a grandes rasgos estas son algunas de las sesiones de la unidad, claro que debes profundizar en este tema para que puedas comprender del todo su estructura. Espero que ahora si puedas solucionar tu problema. Saludos. |
La franja horaria es GMT +2. Ahora son las 14:49:17. |
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