Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Ejemplo De Troceador De Imágenes
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Ejemplo De Troceador De Imágenes 
 
Hola Comunidad!.

Como estuve haciendo el programa de puzzle, cree este programa para
trocear las imágenes o grabarlas.No es que sea un 100% igual que la imagen
original, pero se le parece mucho en los formularios. Diría que es igual, si vieseis las imágenes guardadas.

El código funciona en Gambas3.Hice un cambio y funciono perfectamente.

Para grabar  las imágenes el programa crea un directorio en la home del usuario ("Temporales") y allí guarda
las imágenes si queréis.Ojo,se creara siempre que no exista.

Imagen:

 trocea_1336558871_386388


Aquí tenéis el  código.


Saludos.

Troceador2.tar.gz
Descripción:  
Descargar
Nombre del archivo: Troceador2.tar.gz
Tamaño: 8.58 KB
Descargado: 41 veces
Troceador2.tar.gz
Descripción:  
Descargar
Nombre del archivo: Troceador2.tar.gz
Tamaño: 8.58 KB
Descargado: 41 veces
Troceador2.tar.gz
Descripción:  
Descargar
Nombre del archivo: Troceador2.tar.gz
Tamaño: 8.58 KB
Descargado: 41 veces

 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
última edición por Shell el Miercoles, 09 May 2012, 13:34; editado 2 veces 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejemplo De Troceador De Imágenes 
 
He hecho un esquema del programa y encontré algún que otro error:

---------
Comenzar:

- Creamos un directorio para almacenar las imágenes

- Usuario puede: Abrir una imagen,guardar la imagen o salir.

- Si abrimos una imagen:
      Abre la imagen y la muestra en el formulario principal.

- Si vemos partes
    Borramos el array de imágenes
    Eliminamos los formularios con imágenes
    Creamos imágenes con las dimensiones nuevas
    Creamos los nuevos formularios, mostrando las imágenes

- Si guardamos imágenes (Error solucionado.No guardaba imágenes si antes no se habían visualizado)
    Comprobar que existen imágenes en el array
    Si no existen las creamos y guardamos.

- Si salimos.
    Comprobar si existen formularios abiertos mostrando imágenes.(No solucionado)
    Cerramos los formularios con imágenes y salimos.
--------

El problema que me encuentro es:

Si al salir no existen formularios en pantalla, pero el array de objetos contiene formularios,
se intentan eliminar los formularios que no existen en la pantalla.

Tengo que continuar viendo que le pasa cuando elimina los formularios.
El código de cargar formulario queda así por ahora:

No esta usando arrays que ofrece Gambas3.

Private ruta As String
Private aimagenes As New Object[]
Private aformularios As New Object[]
Private mipicture As New Image
Private auxipicture As New Image
Private partes As Integer

Public Sub Form_Open()

Me.Caption = "Ejemplo de Troceador de Imágenes"
Me.Center
RadioButton1.Value = True
If Not Exist("~/Temporales") Then Mkdir ("~/Temporales") 'Para guardar nuestras imagenes en la carpeta Temporales

End

Public Sub BtnCargaImagen_Click()

aimagenes.Clear 'Limpiamos el array de imagenes
If aformularios.Count > 0 Then EliminaFormularios

Dialog.OpenFile
ruta = Dialog.Path

If ruta <> "" Then
  mipicture = mipicture.Load(ruta)
  PicImagen.Picture = Picture.Load(ruta)
Endif

End


Public Sub btnVerPartes_Click()
  Dim x As Integer
  Dim miformulario As Form
 
  If partes > 0 Then
    aimagenes.Clear
    EliminaFormularios    
    CreaImagenes
        
    'Abre tantas instancias del formulario como partes tenga la imagen
    For x = 0 To aimagenes.Count - 1
       miformulario = New FormCopia(aimagenes[x].Width, aimagenes[x].Height, aimagenes[x])
       aformularios.Add(miformulario)  'Añadimos cada formulario con imagen a un array para manipularlos
       miformulario.Show
    Next

  Endif

End

Public Sub btnGuardaImagenes_Click()
  Dim x As Integer
  Dim miformulario As Form
  
  'Si no hay imágenes crealas
  
  If aimagenes.Count >= 0 Then
    CreaImagenes
    For x = 0 To aimagenes.Count - 1
       aimagenes[x].Save("~/Temporales/archivo" & x & ".png")
    Next
  Endif  
    
End

Public Sub gBotonOpciones_Click()

  'Las partes seran 2x2, 3x3,4x4
  
  Select Case Last.tag
    Case 0
      partes = 2
    Case 1
      partes = 3
    Case 2
      partes = 4
  End Select

End

Public Sub EliminaFormularios()
  Dim formulario As Object
  
  'Para eliminar los formularios que se crearon con cada imágen. Aquí esta el problema
  
  If aformularios.Count > 0 Then    
    For Each formulario In aformularios
        If formulario Is Form Then formulario.Delete
    Next  
  Endif
 
End

Public Sub CreaImagenes()
  Dim x As Integer
  Dim y As Integer
  Dim ancho_celda As Integer
  Dim alto_celda As Integer
 
  If partes > 0 Then
    aimagenes.Clear 'Elimina las imagenes en el array si hay alguna y las creamos
    ancho_celda = mipicture.Width / partes
    alto_celda = mipicture.Height / partes
    
    For x = 0 To mipicture.Width - ancho_celda Step ancho_celda
      For y = 0 To mipicture.Height - alto_celda Step alto_celda
        auxipicture = mipicture.Copy(x, y, ancho_celda, alto_celda)
        aimagenes.Add(auxipicture)
      Next
    Next    
  Endif  
  
End

Public Sub btnSalir_Click()
  'Debe comprobarse si existen formularios mostrados en el escritorio
  If aformularios.Count > 0 Then EliminaFormularios  
  Me.Close
End
 


Tendré que tomarlo con mas tiempo.

Saludos.
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
última edición por Shell el Jueves, 10 May 2012, 09:27; editado 1 vez 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Ejemplo De Troceador De Imágenes 
 
Es la primera vez que hago esto, a ver como sale.

La solución más adecuada es:

http://foro.gambas-es.org/viewtopic...&p=13394#p13394

Parece que funciona así, las referencias a un tema en otro mensaje.

Saludos.
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Imágenes Y Texto En Un ToolButton yyeshua General 5 Jueves, 08 Octobre 2009, 04:32 Ver último mensaje
yyeshua
No hay nuevos mensajes Mails Con Imágenes Incrustadas pcastanedardz General 5 Martes, 09 Marzo 2010, 18:41 Ver último mensaje
pcastanedardz
No hay nuevos mensajes Ecnriptar Imágenes Shell General 3 Sabado, 06 Septiembre 2014, 09:11 Ver último mensaje
Shell
No hay nuevos mensajes Ejemplo De Navegador De Imágenes Shell General 5 Domingo, 12 May 2019, 14:31 Ver último mensaje
cogier
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron