elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Clipboard + Imagen
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Clipboard + Imagen  (Leído 4,331 veces)
pedraxito


Desconectado Desconectado

Mensajes: 385



Ver Perfil
Clipboard + Imagen
« en: 10 Marzo 2008, 18:48 pm »

Hola, en mi aplicacion estoy pegando una imagen en un picturebox desde el Clipboard pero el problema es que solo puedo pegar imagenes ahi cuando las imagenes las copio desde algun browser pero si la imagen la tengo en algun directorio de mi pc y la copio no la pega. por que es esto??

Este es el codigo que tengo para leer la imagen

Código:
Image iFotoPaciente = Clipboard.GetImage();


Espero su ayuda, gracias!!


En línea


Sancho.Mazorka


Desconectado Desconectado

Mensajes: 480


Gamer & Programador


Ver Perfil WWW
Re: Clipboard + Imagen
« Respuesta #1 en: 28 Marzo 2008, 06:27 am »

Soy medio nuevo en VB.NET pero no te la va a pegar, xq cuando copias un archivo .JPG  por ejemplo, estas copiando uno del tipo: Clipboard.GetFileDropList y no del Clipboard.Image, no se solucionar tu inconveniente, pero debe tener solucion, talvez que te devuelva la ruta y la puedas cargar....proba!

Corrijanme si me equivoque!

Sancho.Mazorka    :¬¬


En línea

Ganador Xeon Web Server ! ! !    Sancho.Mazorka :D
http://foro.elhacker.net/index.php/topic,171903.75.html


DeziBel

Desconectado Desconectado

Mensajes: 15



Ver Perfil
Re: Clipboard + Imagen
« Respuesta #2 en: 4 Mayo 2008, 04:39 am »

Pues yo hice esto en el VB 2005:
Cree una aplicación que muestra las imágenes del portapapeles, no importa si son de archivo o copiadas directamente; osea que lee las imagenes copiadas de un browser o las copiadas desde una carpeta.
Espero que sea lo que buscas:

* Agregué una PictureBox y la deje asi como esta
* Agregué un boton y lo deje también asi como esta
* Por último agregué un timer con la propiedad "Interval" en 1000 (1 segundo)

este es el código:

Código:

 'Variable que enlista los archivos del portapapeles:
    Dim lista As System.Collections.Specialized.StringCollection

    'Numerador de imágenes:
    Dim numerador As Integer

    'Variable para obtener la extensión de los archivos
    'enlistados en la variable lista:
    Dim Archivo As System.IO.FileInfo

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'Ajuste de tamaño en la PictureBox1:
        PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        numerador = 0

        'Se obtienen los archivos del portapapeles:
        lista = Clipboard.GetFileDropList

        If lista.Count = 0 Then
            'Si no hay archios en el portapapeles:
            MsgBox("No hay archivos en el portapapeles" & vbCrLf & "Buscando imagenes...")
            'Se buscan imagenes copiadas directamenete
            '(copiadas de un browser directamente, por ejemplo)
            If Clipboard.ContainsImage() Then
                'Si hay alguna imagen se pone en la PictureBox
                PictureBox1.Image = Clipboard.GetImage()
            Else
                'Si no hay:
                MsgBox("Tampoco hay imagenes en el portapapeles")
            End If
        Else
            'Si si hay archivos en el portapapeles
            'se coloca el primero en la PictureBox
            'en caso de que sea una imagen:
            Archivo = My.Computer.FileSystem.GetFileInfo(lista(numerador))
            If Archivo.Extension.ToString = ".jpg" _
            Or Archivo.Extension.ToString = ".bmp" _
            Or Archivo.Extension.ToString = ".gif" _
            Or Archivo.Extension.ToString = ".JPG" _
            Or Archivo.Extension.ToString = ".BMP" _
            Or Archivo.Extension.ToString = ".GIF" Then
                PictureBox1.ImageLocation = lista(numerador)
            End If
            'Y despues se activa el timer si hay más
            'imágenes:
            Timer1.Enabled = True
        End If
    End Sub

    'El timer mustra una imagen diferente cada segundo
    'hasta que ya no hay más en el portapapeles:
    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

        If numerador >= lista.Count Then
            Timer1.Stop()
            MsgBox("no hay más imágenes")
        Else
            Archivo = My.Computer.FileSystem.GetFileInfo(lista(numerador))

            If Archivo.Extension.ToString = ".jpg" _
            Or Archivo.Extension.ToString = ".bmp" _
            Or Archivo.Extension.ToString = ".gif" _
            Or Archivo.Extension.ToString = ".JPG" _
            Or Archivo.Extension.ToString = ".BMP" _
            Or Archivo.Extension.ToString = ".GIF" Then
                PictureBox1.ImageLocation = lista(numerador)
            End If

            numerador = numerador + 1
        End If
    End Sub


Espero que te sirva  ;D
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Complemento SSMS gratuito (Clipboard Manager)
Bases de Datos
Holdlock 0 2,422 Último mensaje 14 Julio 2016, 22:35 pm
por Holdlock
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines