|    
			
				26/12/2009, 10:09
			
			
			  | 
  |   |  |  |  Fecha de Ingreso: diciembre-2009 
						Mensajes: 2
					 Antigüedad: 15 años, 10 meses Puntos: 0 |  | 
  |  Respuesta: Editar imágenes en formularios de Access  
  Hola, tengo un problema parecido. Tengo un campo en la base de datos que almacena una ruta relativa a la imagen, y la muestro en un formulario mediante un script, usando el campo de texto "ruta_imagen" como la ruta y el control de imagen "Picture", que está vacio, para mostrar la imagen como tal. me funciona de maravilla. Pero despues quise hacer click y que abriera la imagen, y buscando encontré esta discusión, y encontré más util abrirla en Paint, ya que se puede rayar la imagen para explicar cosas. Así que tomé el script dado aqui y lo apliqué, pero por alguna extraña razón trata de abrir "c:/documents.bmp" supongo que lo toma de la ruta (ruta_imagen), asi que probé poniendo una imagen con ese nombre en C. funciona! pero no puedo abrir la ruta que tengo almacenada,... aqui tengo el codigo para abrir la imagen:------------------------------------------------------------------------------------------
 Private Sub Form_Current()
 On Error GoTo err_Form_Current
 
 If Not Me!txtPicture = "" Or Not IsNull(Me!txtPicture) Then
 Me!Picture.Picture = GetPathPart & Me!txtPicture
 Else
 Me!Picture.Picture = ""
 End If
 
 exit_Form_Current:
 Exit Sub
 
 err_Form_Current:
 MsgBox Err.Description
 Resume exit_Form_Current
 
 End Sub
 
 Private Sub Form_Open(Cancel As Integer)
 On Error GoTo Err_Form_Open
 
 If IsNull(Me!txtPicture) Or Me!txtPicture = "" Then
 ' do nothing
 Else
 Me!Picture.Picture = GetPathPart & Me!txtPicture
 End If
 
 Exit_Form_Open:
 Exit Sub
 
 Err_Form_Open:
 MsgBox Err.Description
 Resume Exit_Form_Open
 
 End Sub
 
 Private Function GetPathPart() As String
 ' Comments  : Returns the path part of a string
 ' Parameters: strPath - string to parse
 ' Returns   : path part
 '
 Dim db As DAO.Database
 Dim strPath As String
 Dim intCounter As Integer
 
 Set db = CurrentDb
 strPath = db.Name
 db.Close
 Set db = Nothing
 
 For intCounter = Len(strPath) To 1 Step -1
 If Mid$(strPath, intCounter, 1) = "\" Then
 Exit For
 End If
 Next intCounter
 
 GetPathPart = Left$(strPath, intCounter)
 
 End Function
 ------------------------------------------------------------------------------------------
 
 ahora, para abrir la imagen creé un boton vacio y le escribí este código:
 --------------------------------------------------------------------------------------------------------
 Private Sub Command97_Click()
 Dim RetVal
 RetVal = Shell("C:\WINDOWS\system32\mspaint.EXE " & Me!Picture.Picture, 3)
 End Sub
 --------------------------------------------------------------------------------------------------------
 
 seguramente está tomando una parte incompleta de la ruta desde el control, pero no sé como pasarle los parametros completos....
     |