En el menu aparece una x roja en vez de la imagen de un .ico

Tengo un menu donde se colocaron iconos con un archivo .ico pero me aparece un tache y solo sucede en algunas pc's, se cuenta con el archivo .pbr pero ni así logro que muestre el icono correcto y sucede en win 7 y win xp y en la mayoría de las pc's funciona correctamente.

4 Respuestas

Respuesta

Dentro del proyecto debes tener una carpeta, por ejem img..., luego cuando insertas las imágenes ya sea en los iconos o en los picture, la ruta debe ser relativo... quiere decir img\icono1.ico y NO debe ser c:\miproyecto\img\icono1.ico , Este ultimo arrojaría error si tu aplicación cambia de directorio o ubicación.

Por ultimo, al momento de crear el archivo pbr, también debes indicar todo el listado de imágenes. Ojo que no solo es crear el archivo, sino que debes cargarlo al momento de crear el Proyecto para su compilación.

Respuesta
1

Desde mi punto de vista si no son iconos de powerbuilder, deberías ponerlos en cada maquina en una carpeta para que el programa los visualice(c:\Graficos\icono.ico); o a su vez los pone en un servidor de donde todos los que utilizan el programa los puedan visualizar (\\192.168.x.x\Graficos\icono.ico). Un abrazo.

Respuesta
1

En teoría, si esos .ico están bien puestos en tu fichero .PBR y usas este PBR a la hora de compilar tu proyecto, no debería hacer falta distribuir esos ico ni imágenes con el ejecutable. Debería funcionar y verse todo bien en la aplicación compilada y distribuida.
Es decir, si utilizas los ico del propio PB, no hace falta hacer nada. Pero sii usas .ico propios, asegúrate que la ruta que has puesto en esos menús es la misma ruta exacta y nombres que escribes en tu .pbr. Asegúrate que usas ese .pbr a la hora de compilar el proyecto.

Si pones C:\misproyectos\aplicacion1\Recursos\clientes.ico en el menú, en tu .pbr debe haber una línea que ponga C:\misproyectos\aplicacion1\Recursos\clientes.ico. 

Repito: si haces esto, no es necesario distribuir los .ico ni el resto de recursos (jpg, gif, etc...) ya que a la hora de compilar, PowerBuilder coge todos estos recursos del .pbr y se "incrustan" (por decirlo de alguna forma) en el fichero .exe. El ejecutable ocupará unos Kb más, ya que lleva los recursos "incrustrados".
Llevo 16 años trabajando con PB, te aseguro que funciona, y no hace falta distribuir todas las imágenes, ico, gif, jpg, etc... ;)

Intentaré aclarar términos por si sirve a alguien más:
Un fichero PSR es el fichero de Recursos para compilar un ejecutable de PowerBuilder. Es un simple fichero de texto (con extensión .pbr) donde hay una línea por ubicación del fichero de recurso. Cuando hablamos de recurso me refiero a .ico, .gif, .png, .jpeg, etc... utilizados en la aplicación

Como ejemplo particular, tengo un PSR con más de 500 líneas.
...
C:\POWER\Mi Aplicacion\Recursos\sumar.gif
C:\POWER\Mi Aplicacion\Recursos\tag.png
C:\POWER\Mi Aplicacion\Recursos\table.png
C:\POWER\Mi Aplicacion\Recursos\tablas.gif
C:\POWER\Mi Aplicacion\Recursos\tablas.ico
...
Cada línea hace referencia a la ubicación EXACTA del fichero del recurso en mi equipo donde hago la aplicación de PB, y es la MISMA ruta que hay que poner en las ventanas, datawindows, etc, durante el diseño.

Siempre tengo todo alojado en una carpeta Recursos. Pero evidentemente no distribuyo esta carpeta a los PC de cada usuario cuando compilo.

Cuando es el momento de compilar el proyecto, PowerBuilder recorre todos estos recursos que usa la aplicación, va al PSR, y si dicha ruta está ahí, el propio sistema cogerá binariamente la imágen y la incrustará en el .exe que está generando. (Siguiendo mi ejemplo con más de 500 recursos, mi .exe no llega a ocupar 1Mb)
El ejecutable lo puedes poner en cualquier equipo y, aún sin tener un acceso a esas rutas de imágenes, las imágenes aparecerán bien. Porque están "compiladas" en la aplicación: Los iconos, los botones, los menús. Todo.
PD: Recomiendo tener el psr actualizado, y en orden alfabético, para que mantenerlo e insertar nuevas entradas sea más cómodo.

Aclaración: donde pongo PSR, quería decir PBR. PowerBuilderResources.
La manía de tantas siglas, perdón ^_^

Respuesta

En tu carpeta donde se encuentra tu pbd crea una carpeta y ahí coloca todos los

Iconos. En la ruta de los iconos de toolbar debe figurar

carpeta_creada\nombre.ico

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas