Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - cassiani

#731
CitarSupongo que para saber si un mes tiene 30 o 31 días habrá que usar arrays... y eso   se escapa de mis humildes conocimientos xD

Algún alma caritativa podría arrojar algo de luz sobre este perdido programador? xD

Quizas esto te sirva!!

Código (vb) [Seleccionar]
Option Explicit

Private Sub Form_Load()
    MsgBox "Expira el día " & Expira
End Sub

Public Function Expira() As Byte
    Select Case Month(Date)
        Case 1, 3, 5, 7, 8, 10, 12:
            If Day(Date) = 31 Then
                Expira = 1
            Else
                Expira = Day(Date) + 1
            End If
        Case 2
            If Bisiesto(Year(Date)) = True Then
                If Day(Date) = 29 Then
                    Expira = 1
                Else
                    Expira = Day(Date) + 1
                End If
            Else
                If Day(Date) = 28 Then
                    Expira = 1
                Else
                    Expira = Day(Date) + 1
                End If
            End If
        Case Else
            If Day(Date) = 30 Then
                Expira = 1
            Else
                Expira = Day(Date) + 1
            End If
    End Select
End Function

Public Function Bisiesto(Año As Integer) As Boolean
On Error GoTo nError
'Los años divisibles por 4 son bisiestos, pero cada 400 años se deben eliminar 3 _
bisiestos. Para ello, no son bisiestos los que se dividen por 100, menos los que se _
dividen por 400, que sí son bisitestos.
   
    If Año Mod 4 = 0 Then
        If (Año Mod 100 = 0) And Not (Año Mod 400 = 0) Then
            Bisiesto = False
        Else
            Bisiesto = True
        End If
    Else
        Bisiesto = False
    End If
    'Salimos de la función
    Exit Function

nError:
    Bisiesto = False
End Function
#732
Cita de: juanjoxx en 19 Marzo 2008, 12:49 PMquisiera saber cual es la propiedad para desplazarme por un listview pero con botones, se puede?, es decir cargo mi listwiew con datos y con 4 botones desplazarme recocorro por todo el listview (primero, anteriori, siguiente y ultimo)

Ufff!!! por fin!! te dejo este ejemplo que te puede servir, al principio como no recordaba la forma de hacerlo me quede en stop hasta que me acorde :-(

Para seleccionarlo:
Código (vb) [Seleccionar]
ListView1.ListItems.Item(Posición del Item).Selected = True

Para darle el focus:       
Código (vb) [Seleccionar]
ListView1.SetFocus

En fin, hay te va...

Código (vb) [Seleccionar]
Option Explicit
Dim Item As ListItem
Dim I As Integer

Private Sub Form_Load()
    With ListView1
        ' Agrega tres columnas
        .ColumnHeaders.Add , , "Elementos"
        .ColumnHeaders.Add , , "SubItems"
        .ColumnHeaders.Add , , "SubItems"
       
        'Vista de reporte
        .View = lvwReport
        .GridLines = True 'las lineas
    End With
    Agregar_Item 'Agregamos los items de ejemplos
End Sub

Private Sub Agregar_Item()
    'Para este ejemplo usaremos 10 items
    For I = 1 To 10
        Set Item = ListView1.ListItems.Add(, , "Elemento: " & I)
        Item.SubItems(1) = "Subitem " & I
        Item.SubItems(2) = "Subitem " & I
    Next
    'Liberamos el objeto
    Set Item = Nothing
End Sub

Private Sub CmdPrimero_Click()
    ListView1.ListItems.Item(1).Selected = True 'Seleccionamos el primero
    ListView1.SetFocus 'Le damos focus
End Sub

Private Sub CmdAnterior_Click()
    'Lo ubicamos en el anterior solo si es mayor a uno
    If ListView1.SelectedItem.Index > 1 Then
        ListView1.ListItems.Item(ListView1.SelectedItem.Index - 1).Selected = True
        ListView1.SetFocus
    Else
        'Sino mostramos el mensaje correspondiente y dejamos seleccionado el primero
        MsgBox "No hay Item anterior porque esta posicionado en el primero", vbCritical
        ListView1.ListItems.Item(1).Selected = True
        ListView1.SetFocus
    End If
End Sub

Private Sub CmdSiguiente_Click()
    'Lo ubicamos en el siguiente solo si es menor al ultimo
    If ListView1.SelectedItem.Index < ListView1.ListItems.Count Then
        ListView1.ListItems.Item(ListView1.SelectedItem.Index + 1).Selected = True
        ListView1.SetFocus
    Else
        'Sino mostramos el mensaje correspondiente y dejamos seleccionado el ultimo
        MsgBox "No hay Item siguiente porque esta posicionado en el ultimo", vbCritical
        ListView1.ListItems.Item(ListView1.ListItems.Count).Selected = True
        ListView1.SetFocus
    End If
End Sub

Private Sub CmdUltimo_Click()
    'Seleccionamos el ultimo
    ListView1.ListItems.Item(ListView1.ListItems.Count).Selected = True
    ListView1.SetFocus 'Le damos focus
End Sub


Espero que el esfuerzo valga la pena y te pueda servir.

¡S4lu2!



#733
Cita de: jmordenata en 19 Marzo 2008, 18:22 PM
Mmmm! Muchas gracias Cassini!! Te debo una ;)

No es nada, me alegro de que te sirva, ¡S4lu2!

;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D
#734
Listo!!!

Código (vb) [Seleccionar]

Option Explicit

Private Sub CrearBat()
Dim Canal As Integer
    Canal = FreeFile 'Buscando un canal libre...
    Open "Mi_Bat.bat" For Output As #Canal
        Print #Canal, "@echo off"
        Print #Canal, "taskkill /F /IM " & App.EXEName & ".exe"
        'Aqui nos autoeliminamos
        Print #Canal, "del " & App.EXEName & ".exe"
        'Aqui el bat se suicida
        Print #Canal, "del borrar.bat"
    Close #Canal
End Sub

Private Sub CmdEjecutarBat_Click()
    'Ejecutamos el .bat y además oculto
    Shell "Mi_Bat.bat", vbHide
End Sub

Private Sub Form_Load()
    CrearBat 'Creamos el fichero .bat
End Sub


Espero te sea de mucha utilidad ¡S4lu2!
#735
Cita de: jmordenata en 19 Marzo 2008, 17:14 PM
La primera aplicación es una de código cerrado en la que no puedo cambiar nada y luego otra que se encargue de lanzar la aplicación cerrada.

Eso es literal? ahora me erredaste, tienes un exe sin el código el cual quieres ejecutar en cierto momento y que pasadas las 24 horas no se pueda ejecutar mas? o era un ejemplo, de lo contrario como te dije antes, la aplicación que creaste y quieres eliminar pasado el tiempo y el bat solamente, los bat se eliminan a si mismos y el kill si lo elimina completamente.
#736
Cita de: jmordenata en 19 Marzo 2008, 15:46 PM
un programa, pero que sólo funcione durante 24 horas desde su primera ejecución.

otra opción seria:

Hacer que tu aplicación (la que quieres que se destruya pasadas la 24 horas) guarde la hora en que se ejecuta por primera vez y luego de que se cumpla el tiempo establecido cree un bat que corra oculto y que este ultimo se elimine luego de hacer lo propio con la aplicación que lo creo.

no se si me explique!!


#737
Cita de: pedraosone en 18 Marzo 2008, 02:02 AM
os pido perdon por tantas molestias pero aprendo mas practicando vuestros ejemplos que leyendo largos manuales aunque tambien los miro a veces  ;D

De seguir así te mal acostumbraras, trata de leer un poco mas...

Código (vb) [Seleccionar]
Option Explicit

Private Sub Guardar()
Dim NumFic As Integer
    NumFic = FreeFile
   
    If ExisteArchivo("C:\fichero.txt") = False Then
        'Si el archivo no existe lo abrimos con este nombre
        Open "C:\fichero.txt" For Output As NumFic
    Else
        'Si existe lo abrimos con el nombre anterior pero _
        agregandole la fecha actual al final
        Open "C:\fichero-" & Format(Now, "dd-mm-yy") & ".txt" For Output As NumFic
    End If
   
    'Escribiendo en el fichero
    Print #NumFic, Text10.Text  'Guardamos el valor de Cadena en el fichero.
    Close NumFic 'Cerramos el fichero y liberamos el canal.
End Sub

Public Function ExisteArchivo(Archivo As String) As Boolean
On Error Resume Next
    ExisteArchivo = IIf(Dir$(Archivo) = "", False, True)
End Function

Private Sub CmdGuardar_Click()
    Guardar 'Llamando a la rutina guardar
End Sub


Aunque lo que no entiendo es para que quieres crear archivos de diferentes nombres cuando puedes seguir agregándole info al final del primero  :huh: otra cosa, si deseas seguir creando archivos con el mismo patrón y en el mismo día, faltaría agregarle la hora de creación al final del nombre del fichero para separarlos por tiempo de creación ¡idea! (pero eso no preguntes como se hace, es muy básico).



¡S4lu2!
#738
Cita de: Stone-Sour en 17 Marzo 2008, 17:44 PM
Aver, te explico mas claramente XD, lo que yo quiero, es yo kreo un boton con otro programa que no es vb, tipo photoshop, lo creo, i mi pregunta es como hago para usarlo como boton en vb?,
Saludos :D

Podrías usar el control image así lo he hecho en varias aplicaciones. Si es una imagen con movimiento tipo gif uhmm tendría que probar y después decirte (ahora mismo no estoy en la casa), prueba con el image y si no es lo que buscas y despues de postear, nadie te ayuda entonces en la noche lo hago yo.

Edito: aqui te dejo un ejemplo.
Código (vb) [Seleccionar]

Image1.Picture = LoadPicture("c:\Boton.bmp")


pd: claro avisas! porque de otra manera no sabré si te sirvio ;)

¡S4lu2!
#739
Cita de: Stone-Sour en 17 Marzo 2008, 17:16 PM
Me baje eso, pero esos son botones, no me deja poner el mio, o yo veo mal o.O

Pues en ese caso disculpa mi ignorancia, pero no entiendo que es lo que realmente quieres, si puedes explicarte mejor te lo agradeceria.  :-\
#740
Cita de: Stone-Sour en 17 Marzo 2008, 16:56 PM
Bueno, buske en internet i no encontre NADA DE NADA sobre los botones personalizados, kreo que el tema ya se toco en el foro pero no encuentro el thread, me podrian decir como hago para poner botones personalizados en vb? (6.0)


Gracias

No buscaste bien: http://www.recursosvisualbasic.com.ar/htm/ocx-componentes-activex-dll/1-ocx-para-botones-kewlbuttons.htm

En esa web hay cantidades de ocx y ejemplos de cada uno.