[Mundo Visual FoxPro] PictureVal en Windows 7

1,004 views
Skip to first unread message

Daniel Sánchez

unread,
Apr 19, 2010, 11:04:52 AM4/19/10
to Mundo Visual FoxPro
El uso del pictureval en el objeto imagen me ha dado mucha potencia y
flexibilidad al manejar imagenes en mis aplicaciones, y no he tenido
problemas en versiones de windows 98, XP y Vista, pero ahora con la
versión 7, no se puede visualizar las imagenes que tienes almacenadas
en una BD o que tengas en alguna variable de memoria, ya que debo
suponer el SO lo bloquea y no te permite visualizarla (debo suponer
por cuestiones de seguridad).
Normalmente utilizaba una instruccion como esta

*/obtengo la imagen y la paso a memoria
cMyImagen=filetostr(crutaynombreimagen)
*/ahora si debeseaba lo grababa en una Tabla o lo mantenia en memoria
sele mitabla
replace campofoto with cMyImagen
**
**
**
*/Si mas adelante deseaba usarla y teniendola ya en memoria hacia esto
thisform.imagen1.pictureval=cMyImagen
*/y listo me visualizaba la imagen almacenada en la variable de
memoria

Pero ahora con el windows 7 esto no funciona y solo me muesta una gran
X en el marco del objeto imagen

Alguien sabe como puedo hacer para que el windows 7 no me bloquee la
imagen que deseo visualizar
si alguien le paso lo mismo y lo pudo solucionar, favor de hacernos
llegar sus experiencias sobre el tema

Gracias por la atencion.

Daniel Sánchez Escobar
Reset Software & Sistemas
Telf. 044-949398047
Trujillo - Perú

--
_______________________________________________________________
Has recibido este mensaje porque estás suscrito al Grupo "Mundo Visual
FoxPro" de Grupos de Google.

Para anular la suscripción a este grupo, envía un mensaje a:
mundovisualfox...@googlegroups.com

Gilberth Grissom

unread,
Apr 19, 2010, 5:00:22 PM4/19/10
to mundovis...@googlegroups.com
Saludos amigo:
 
debe haber un problema en la ruta o carpeta en donde esta almacenada las fotos y como lo jala, porque los ejecutables de VFP en Windows 7 se ven mucho mejor...
 
por mi parte ponga imagenes en varios formualrios y en windows 7 se ven mejor..
 
 
sigue probando con las rutas....
 
saludos
 
Grisson
--
Grissom

Daniel Sánchez

unread,
Apr 19, 2010, 6:09:13 PM4/19/10
to mundovis...@googlegroups.com
Claro fijate que te pongo que tengo problemas con el la propiedad PictureVal y no con la propiedad picture del objeto imagen, con la propiedad picture todo funciona de maravilla, si tienes W7 haz la prueba usando la propiedad PictureVal, que funciona teniendo la imagen almacenada en una variable de memoria esta se asigna a la propiedad PictureVal y deberias visualizar la imagen, he intentando ejecutandolo en modo administrador, pero obtengo el mismo resultado.

--
Daniel Sánchez Escobar
Investigación y Desarrollo
Reset Software & Sistemas
Móvil 044-949398047
Trujillo - Perú

Fcocibaeno

unread,
Apr 20, 2010, 8:52:22 AM4/20/10
to Mundo Visual FoxPro
Saludos desde República Dominicana.
En mi sistema uso ese mismo objeto y esa misma propiedad y me funciona
de maravilla, inclusive, fue desarrollado en XP y ahora corre en W7
con casi ninguna modificacion.
Pero, en general no debe darte problemas. Mira el codigo que tengo en
el evento "click" del objeto "image1"

_fotocliente=Getfile("jpg","Archivo","Escoger",0,"Escoja Fotografía
del Cliente.") && abre cuadro de dialogo "abrir" de Windows
If Len(Alltrim(_fotocliente))>1 && verifico que haya escogido un
archivo
This.PictureVal = Filetostr(_fotocliente) && se lo asigno al objeto
"image1"
Endif

Bueno, un detalle es q la foto se hace con una camara digital y el
formato por defecto es .JPG
Este programa corre en W7 de 32bits en español, y el Visual Fox es el
9.0 SP2
Revisa a ver si tienes instalado el SP2.

Ojalá te haya ayudado...
Feliz día a todos.

Daniel Sánchez

unread,
Apr 20, 2010, 10:39:45 AM4/20/10
to mundovis...@googlegroups.com
Y has intentado ponerlo en una variable y de ahi asignarlo al pictureval, no directo del filetostr, no lo he probado asi, lo que pasa es que en mi caso como te comente paso las imagenes a un campo memo o general en una tabla en la bd y cuando lo necesito lo cargo a una variable y le asigno al pictureval

Fcocibaeno

unread,
Apr 20, 2010, 12:03:37 PM4/20/10
to Mundo Visual FoxPro
Hola de nuevo mi hermano.
Ahora si espero poder ayudarte.
He hecho las pruebas que me pediste, funciona, pero, sólo si el campo
de la tabla es tipo "memo".
Lo que hice fue crear una tabla (table1), un formulario (form1), un
boton (command1), un objeto tipo "picture" (picture1). Bien, en el
evento click del boton escribi el siguiente codigo.

_fotocliente=FILETOSTR(Getfile("jpg","Archivo","Escoger",0,"Escoja
Fotografía del Cliente."))
If Len(Alltrim(_fotocliente))>1
Select table1
Append Blank
Replace table1.foto With _fotocliente
Endif

******** Observa algo interesante, hago la conversion a binario
(filetostr), inmediatamente leo la foto con "Getfile"
******** luego, en el evento click del objeto "picture" (picture1)
this.PictureVal = table1.foto

!! Listo !!
Si deseas que te envie el formulario con la tabla, por favor avisame.

IRCSA Software

unread,
Apr 21, 2010, 1:58:57 PM4/21/10
to Mundo Visual FoxPro
Hola,

soy nuevo en el grupo y me da gusto poder iniciar ayudando, espero que
esto te sea de utilidad...

Yo trabajo con win 7 y pictureval como tu le haces pero almaceno la
foto en una variable tiplo BLOB no en una cadena

Al iniciar la declaro...
PUBLIC bFotoSocio
bFotoSocio = 0H && BLOB vacio

Y luego en donde quieras q salga la foto o se actualice...
bFotoSocio = CAST(curRegistro.foto as Blob) && curRegistro es un
cursor de una consulta a MySQL y foto es un capo BLOB de MySQL
This.Parent.imgFoto.PictureVal = bFotoSocio

Tambien es importante que mapees los tipos de datos, checa la ayuda de
esta funcion, la pones al inicar tu entorno...
CURSORSETPROP("MapBinary", .T., 0)

en mi caso por q trabajo con cursores q se generan de una consulta a
una tabla de socios de MySQL.

Espero q t sirvan de algo estos datos;

Saludos desde Cancún México.

Arturo Ramos
IRCSA Software
www.ircsasoftware.com.mx

Daniel Sánchez

unread,
Apr 22, 2010, 10:29:46 AM4/22/10
to mundovis...@googlegroups.com
Con las otras versiones de windows me funciona perfectamente, la pregunta que te haria seria aplicas este método siempre o solo cuando has tenido el mismo problema con W7


-- 
Daniel Sánchez Escobar
Investigación y Desarrollo
Reset Software & Sistemas
Móvil 044-949398047
Reply all
Reply to author
Forward
0 new messages