Otros temas que te pueden interesar
|
||||
| Tema | Autor | Foro | Respuestas | Último post |
| [Sintaxis] ODBC - cambiar el "path" de una base de datos | Hrmcobol | PowerCOBOL (ActiveX, v4 - v11) | 9 | 15 de noviembre de 2022 20:24 |
| China quiere lanzar una "luna artificial" en 2020 | Kuk | Charladero - espacio libre | 0 | 20 de octubre de 2018 21:52 |
| [Sintaxis] Error MOVE "Parent" de un nodo "Root" en TreeView | dmosca | PowerCOBOL (ActiveX, v4 - v11) | 1 | 23 de agosto de 2017 08:47 |
| [Sintaxis] Filtro con CmEdit y evento "change" | Roger | PowerCOBOL (ActiveX, v4 - v11) | 4 | 26 de febrero de 2017 14:09 |
| [Sintaxis] Cambiar variable de entorno "Path" en ejecución | Recato53 | PowerCOBOL (ActiveX, v4 - v11) | 7 | 10 de agosto de 2015 14:25 |
![]() |
|
Administrador
![]()
|
¿Estás respetando las minúsculas/mayúsculas? Alguna chorrada que se nos escapa por algún lado.
NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro. ![]() ¿Te han ayudado? NO TE OLVIDES de darle a ![]() ¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick |
||||||||
|
|
|
|
Moderador Global
![]()
|
Bueno eso ya está solucionado, increíblemente, he borrado la librería, he hecho un re-build completo, la he vuelto a añadir, compilado otra vez y ... ¡¡ta-channnn!!, ya no ha dado el error. El problema que tengo ahora es que si hago ésto
Código COBOL:
al ejecutar, me salta el error JMP0221I-U CALL ERROR OCCURRED IN 'GET-hwnd' OF THE METHOD INVOCATION. 'NULL' porque COBJECT, tiene valor 0, (NULL) Sin embargo, si hago Código COBOL:
Funciona perfectamente, (aquí COBJECT, si que tiene un valor positivo), por lo visto, no se puede pasar el nombre a través de una variable, que es lo que necesito realmente, así que, de momento lo voy a dejar, porque no puedo pasar más tiempo con esto, lo haré manualmente de momento y más adelante, si puedo, lo retomaré. muchas gracias.- |
||||||||
|
|
|
|
Administrador
![]()
|
@Josber, sí es verdad, cuando añades algo de vez en cuando el cache no se refresa y el Build no lo toma en cuenta. Hay que hacer Rebuild.
El "Name" es una propiedad, como un campo del control (objeto), no tiene Handle (hwnd). Si pasas por COM/OLE, para obtener Propiedades o ponerlas, es todo pasando por INVOKE OBJETO "[ación]-[nombre_propiedad]", donde ación es SET o GET y nombre_propiedad es cualquiera que tiene el componente, como hwnd, Name, Width etc. Ejemplos: Código COBOL:
NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro. ![]() ¿Te han ayudado? NO TE OLVIDES de darle a ![]() ¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick |
||||||||
|
|
|
|
Guardián del Foro
|
Hola Amigos: Estoy tratando de seguir el hilo de esta conversación y hay conceptos que no manejo. Están programando a un nivel que no domino.
Pero tratando de entender los que quieres @Josber es con la misma rutina poder manejar las propiedades de distintos controles pasando como parámetro el nombre del control. El "Name" de un control es un string, no es un objeto, por eso no podés hacer esto Código COBOL:
COBJECT espera que le muevas un objeto no un string. Ahora hacer Código COBOL:
en lugar de Código COBOL:
Debería servirte lo mismo, porque en el "campo" COBJECT tendrías el objeto en cuestión. O seguramente algo se me está escapando. Perdón por la ignorancia, pero es medio complicado para mi cabeza. Saludos Fito... |
||||||||
|
|
|
|
Administrador
![]()
|
@Fito, no se te escapa nada, llevas razón, es eso
![]() NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro. ![]() ¿Te han ayudado? NO TE OLVIDES de darle a ![]() ¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick |
||||||||
|
|
|
|
Moderador Global
![]()
|
@Fito, Sí es correcto lo que dices pero, no he puesto que CAMPO (I), es el nombre de un control que está en array, por lo que "su 'Name'", es CAMPO(n), ése nombre es el que necesito mover a una variable porque, no sólo es el control CAMPO (I), hay más controles, como INFO (I), SUM (I), VIEW (I), etc.
Entonces, yo lo que quiero es ahorrar programación, imagina que quiero vaciar esos campos, (que no es el caso, porque es más complicado), tendría que hacer un MOVE SPACES a cada uno de esos controles, sin embargo, si puedo mover la propiedad Name a una variable y luego "referenciar" esa variable en el INVOKE, ahorraría líneas de código. Si hago: Código COBOL:
funciona perfectamente, pero si hago, (que es lo que necesito): Código COBOL:
ya no funciona, a pesar de que NOMBRE_CONTROL, contiene el valor correcto, en el primer caso COBJECT, tiene un valor positivo, pero en el segundo caso, COBJECT, tiene un valor 0, (nulo). Espero que se entienda Un salu2.- |
||||||||
|
|
|
|
Administrador
![]()
|
@Josber, te estás liando yo creo
Posibilidad Nº1 utilizando OBJECT-REFERENCE nombre_de_la_clase: Código COBOL:
Posibilidad Nº2, pasando por COM/OLE: Código COBOL:
NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro. ![]() ¿Te han ayudado? NO TE OLVIDES de darle a ![]() ¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick |
||||||||
|
|
|
|
Guardián del Foro
|
Holaaa:
Exacto @Kuk, hay que hacer un array de objetos, no un array de los name de los objetos. Está muy buena tu idea @Josber, yo tengo en un método del formulario todos los move y se hace larga la programación Saludos Fito... |
||||||||
|
|
|
![]() |
|
|
| Archivo - Cobol Foro | Contactar con Nosotros - Cobol Foro | |||||||