none
Como hacer que le mismo botón te mande a una pagina distinta cada dia.

    Pregunta

  • Veamos... estoy aprendiendo a utilizar VB 2008 (he empezado hace muy poco y no se casi nada). Me gustaría hacer una aplicación sencilla con la que poder llevar las reservas que se hacen para un club de tenis. Explico todo de manera breve:
    1 - Las reservas son para máximo dos dias, así que solo hacen falta 3 botones (HOY, MAÑANA y PASADOMAÑANA).
    2 - Hay reservas fijas: cada x dias de cada semana las mismas horas (de que manera se puede dar la opción de que cada vez que es, por ejemplo, miercoles salga la reserva para esa persona que juega todos los miercoles a esa hora).
    3 - Los botones "HOY, MAÑANA y PASADOMAÑANA" deben cambiar según el día. He pensado en algo que detecte la fecha del ordenador, y según lo que lea asigne un valor a cada botón.

    Esta es solo una idea, casi no se utilizar VB, por eso si alguien me puede ayudar se lo agradezco.
    Un saludo
    viernes, 12 de junio de 2009 18:38

Respuestas

  • Hola Bueno Me explicare mejor 

    1-  crea un formulario , cuando se muetre el disenador del formulario

    2- arrastra tres botones del cuadro de eeramientas  al formulario

    3- has doble click en el formulario te aparecera el codigo siguiente

    Partial Class Form1
     
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    
        End Sub
    
    End Class

    4- Borra las lineas que estan en negritas en el codigo anterior,

    4- pega el siguiente codigo


        Dim ahora As Integer = Now.Day
    
        Dim manana As Integer = Now.Day + 1
    
        Dim Pasado_manana As Integer = Now.Day + 2
    
        Private Sub Ahora_()
    
            If ahora = Now.Day Then
    
                MsgBox("ahora " & ahora)
    
            End If
    
    
        End Sub
    
        Private Sub Manana_()
    
    
            If manana = Now.Day + 1 Then
    
                MsgBox("Manana " & manana)
    
    
            End If
    
        End Sub
    
        Private Sub Pasado_manana_()
            If Pasado_manana = Now.Day + 2 Then
    
                MsgBox("Pasado Manana " & Pasado_manana)
    
            End If
        End Sub
    
        Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
            Me.Pasado_manana_()
        End Sub
    
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Me.Ahora_()
        End Sub
    
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Me.Button1.Text = "Ahora"
            Me.Button2.Text = "Manana"
            Me.Button3.Text = "Pasado Manana"
        End Sub
    
        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            Me.Manana_()
        End Sub


    Nota : las siguientes lineas de codigo se carga el texto en tiempo de ejecucion

           Me.Button1.Text = "Ahora"
            Me.Button2.Text = "Manana"
            Me.Button3.Text = "Pasado Manana"
    



    ahora ya esta creo un poco mas explicado espero ahora si te Pueda ayudar pero si tienes mas preguntas  Puedes Hacerlas Avemos Muchos En El Foro que te Podemos Ayudar ........

    Saludos

    Melvin
    Todo Es posible si se studia con exfuerso no importando los de mas Dios esta con nosotros y no hay mas sabiduria que la de Dios, Everything is posible if you study a lot wiht esforce , God Loves us and there isn't anybody like God.... Melvin Saludos
    domingo, 21 de junio de 2009 17:10
  • Aqui te dejo otro ejemplo Espero te sirva Es muy diferente al anterior pero espero captes la idea se trata de jugar con los dias que el ssytema muestra



    1-  crea un formulario , cuando se muetre el disenador del formulario

    2- arrastra tres botones del cuadro de eeramientas  al formulario

    3- has doble click en el formulario te aparecera el codigo siguiente

    Partial Class Form1
     
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    
        End Sub
    
    End Class

    4- Borra las lineas que estan en negritas en el codigo anterior,

    4- pega el siguiente codigo

     Dim Dias As New ArrayList
        Dim contador As Integer = 1
        Public Sub New()
    
            ' Llamada necesaria para el Diseñador de Windows Forms.
            InitializeComponent()
    
            ' Agregue cualquier inicialización después de la llamada a InitializeComponent().
    
            For dia = 1 To 31
    
                Dias.Add(dia)
    
            Next
          
        End Sub
    
        Private Sub Ahora_()
    
    
    
    
            For Each diasDelMes In Dias
    
                If System.DateTime.Now.Day = diasDelMes Then
                    Dim form As New Form
    
                    form.Text = "Pagina Del Dia " & diasDelMes
    
                    form.ShowDialog()
                End If
    
            Next
    
    
        End Sub
    
        Private Sub Manana_()
    
            For Each diasDelMes In Dias
    
                If System.DateTime.Now.Day + 1 = diasDelMes Then
    
    
                    Dim form As New Form
    
                    form.Text = "Pagina Del Dia " & diasDelMes
    
                    form.ShowDialog()
    
    
                End If
    
    
            Next
    
        End Sub
    
        Private Sub Pasado_manana_()
    
            For Each diasDelMes In Dias
    
                If System.DateTime.Now.Day + 2 = diasDelMes Then
                    Dim form As New Form
    
                    form.Text = "Pagina Del Dia " & diasDelMes
    
                    form.ShowDialog()
                End If
    
    
            Next
    
        End Sub
    
        Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
            Me.Pasado_manana_()
        End Sub
    
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Me.Ahora_()
        End Sub
    
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Me.Button1.Text = "Ahora"
            Me.Button2.Text = "Manana"
            Me.Button3.Text = "Pasado Manana"
        End Sub
    
        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            Me.Manana_()
        End Sub


    Conforme presiones un boton se te mostrara un formulario mira en el formularo se muestra el texto de la fecha

    Bueno en lugar del formulario pon la pagina que deseas Cargar


    Saluodos
    Melvin

    Todo Es posible si se studia con exfuerso no importando los de mas Dios esta con nosotros y no hay mas sabiduria que la de Dios, Everything is posible if you study a lot wiht esforce , God Loves us and there isn't anybody like God.... Melvin Saludos
    domingo, 21 de junio de 2009 18:55

Todas las respuestas

  • hola,

    una consulta que nivel de conocimiento de programacion posee, o sea ahs realizado ya alguna aplicacion en .net o esta es la primera ?

    lo pregunto porque la consulta que realzias es muy pero muy amplia, involucra varios temas:

    - segun veo vas a necesitar registrar las resevas para ellos vas a necestar un base de datos, entonces cual usaras Access, Sql server, MySql , alguna otra?

    - con respecto a los bootnes de hoy, mañana , pasado mañana, no te convendria hacer usod e un control de calendario, tipo el DatePicker, creo que es mas practico si es que quieres ver alguna reserva de alguna otra fecha, con solo tres botoens creo quee stas limitando la aplicacion, por ahi podrias si agregar los botones para que te posicionen la fecha en el control de fecha.

    - para detectar la fecha del ordenar es la mas simple de todas y es solo una linea DateTime.Now, jeje si eso es todo, tiene la fecha del dia.

    - para las reservas fijas de una persona como te decia si usas una base de datos y registras las resevas podrias hacer un query a la db y recuperar y listas la info de estas reservas.

    Por ahi podrias empezar a armar un poco el diseñod e la aplicacion y a la apr invetigando un poco sobre programacion vb.net en este caso, y que asl rpeguntas sean mas puntuales, ya que sino las respuestas seran muy genericas y no creo que te ayuden

    saludos
    Leandro Tuttini

    Work: Iceberg Solutions
    Blog
    Buenos Aires
    Argentina
    viernes, 12 de junio de 2009 19:00
  • hola se muy bien lo que necesitas te dejo este codigo esta solo para procesarlo prubalo en los botones correspondientes si lo analizas se te sera muy facil entenderlo

     Dim ahora As Integer = Now.Day
    
        Dim manana As Integer = Now.Day + 1
    
        Dim Pasado_manana As Integer = Now.Day + 2
    
        Private Sub Ahora_()
    
            If ahora = Now.Day Then
    
                MsgBox("ahora " & ahora)
            End If
    
    
        End Sub
    
        Private Sub Manana_()
    
    
            If manana = Now.Day + 1 Then
    
                MsgBox("Manana " & manana)
    
    
            End If
    
        End Sub
    
        Private Sub Pasado_manana_()
            If Pasado_manana = Now.Day + 2 Then
    
                MsgBox("Pasado Manana " & Pasado_manana)
    
            End If
        End Sub

    en un boton Llamado "Ahora" pen el evento Click pega el siguiente codigo

     

    Me.Ahora_()


    en otro boton llamado man'ana en el evento click pega el siguinet codigo

     

    Me.Manana_()



    en otro boton llamado pasado man'ana en el evento click pega el siguinet codigo


    Me

     

    .Pasado_manana_()



    es muy facil espero lo tomes en cuenta, la fecha va cambiando mediante la el dia de Ahora o sea el dia que tiene tu pc , Pruebalo y solo pasa actualiza este codigo en tu proyecto

    marca como respuesta a este comentario si eslo que necesitabas



    Saludos..........


    From U.S.A
    Todo Es posible si se studia con exfuerso no importando los de mas Dios esta con nosotros y no hay mas sabiduria que la de Dios, Everything is posible if you study a lot wiht esforce , God Loves us and there isn't anybody like God....
    • Propuesto como respuesta Melvindev viernes, 12 de junio de 2009 20:45
    viernes, 12 de junio de 2009 20:45
  • Perdon por tardar, he estado fuera unos días.

    He probado con el código de Melvin's, pero me da errores, no se si es que lo pongo en el lugar incorrecto o hago algo mal. (Lo he intentado varias veces y nada).


    En respuesta a Leandro Tuttini, mi nivel de conocimientos sobre VB es practicamente nulo, acabo de empezar y desconozco la mayoría de las opciones de la aplicación. Pensé que sería mas sencillo de realizar, pero parece que me equivocaba...

    No se que base de datos me conviene utilizar (supongo que una base de datos SQL Server).

    A ver si avanzamos de alguna manera.
    Gracias
    domingo, 21 de junio de 2009 14:18
  • Hola Bueno Me explicare mejor 

    1-  crea un formulario , cuando se muetre el disenador del formulario

    2- arrastra tres botones del cuadro de eeramientas  al formulario

    3- has doble click en el formulario te aparecera el codigo siguiente

    Partial Class Form1
     
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    
        End Sub
    
    End Class

    4- Borra las lineas que estan en negritas en el codigo anterior,

    4- pega el siguiente codigo


        Dim ahora As Integer = Now.Day
    
        Dim manana As Integer = Now.Day + 1
    
        Dim Pasado_manana As Integer = Now.Day + 2
    
        Private Sub Ahora_()
    
            If ahora = Now.Day Then
    
                MsgBox("ahora " & ahora)
    
            End If
    
    
        End Sub
    
        Private Sub Manana_()
    
    
            If manana = Now.Day + 1 Then
    
                MsgBox("Manana " & manana)
    
    
            End If
    
        End Sub
    
        Private Sub Pasado_manana_()
            If Pasado_manana = Now.Day + 2 Then
    
                MsgBox("Pasado Manana " & Pasado_manana)
    
            End If
        End Sub
    
        Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
            Me.Pasado_manana_()
        End Sub
    
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Me.Ahora_()
        End Sub
    
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Me.Button1.Text = "Ahora"
            Me.Button2.Text = "Manana"
            Me.Button3.Text = "Pasado Manana"
        End Sub
    
        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            Me.Manana_()
        End Sub


    Nota : las siguientes lineas de codigo se carga el texto en tiempo de ejecucion

           Me.Button1.Text = "Ahora"
            Me.Button2.Text = "Manana"
            Me.Button3.Text = "Pasado Manana"
    



    ahora ya esta creo un poco mas explicado espero ahora si te Pueda ayudar pero si tienes mas preguntas  Puedes Hacerlas Avemos Muchos En El Foro que te Podemos Ayudar ........

    Saludos

    Melvin
    Todo Es posible si se studia con exfuerso no importando los de mas Dios esta con nosotros y no hay mas sabiduria que la de Dios, Everything is posible if you study a lot wiht esforce , God Loves us and there isn't anybody like God.... Melvin Saludos
    domingo, 21 de junio de 2009 17:10
  • Bien, ahora si funciona.
    Seguimos:
    Cuando hago click en cada botón este debería llevarme a una página en la que podría introducir las reservas que se han hacen. Lo que no se es como hacer que muestre una página diferente cada día.
    ¿Alguna solución?



    Voy a informarme sobre un par de puntos del código anterior para entenderlo bien del todo. Aunque ya se que es lo que hace y de que manera. Muchas gracias por la ayuda.
    domingo, 21 de junio de 2009 18:10
  • Aqui te dejo otro ejemplo Espero te sirva Es muy diferente al anterior pero espero captes la idea se trata de jugar con los dias que el ssytema muestra



    1-  crea un formulario , cuando se muetre el disenador del formulario

    2- arrastra tres botones del cuadro de eeramientas  al formulario

    3- has doble click en el formulario te aparecera el codigo siguiente

    Partial Class Form1
     
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    
        End Sub
    
    End Class

    4- Borra las lineas que estan en negritas en el codigo anterior,

    4- pega el siguiente codigo

     Dim Dias As New ArrayList
        Dim contador As Integer = 1
        Public Sub New()
    
            ' Llamada necesaria para el Diseñador de Windows Forms.
            InitializeComponent()
    
            ' Agregue cualquier inicialización después de la llamada a InitializeComponent().
    
            For dia = 1 To 31
    
                Dias.Add(dia)
    
            Next
          
        End Sub
    
        Private Sub Ahora_()
    
    
    
    
            For Each diasDelMes In Dias
    
                If System.DateTime.Now.Day = diasDelMes Then
                    Dim form As New Form
    
                    form.Text = "Pagina Del Dia " & diasDelMes
    
                    form.ShowDialog()
                End If
    
            Next
    
    
        End Sub
    
        Private Sub Manana_()
    
            For Each diasDelMes In Dias
    
                If System.DateTime.Now.Day + 1 = diasDelMes Then
    
    
                    Dim form As New Form
    
                    form.Text = "Pagina Del Dia " & diasDelMes
    
                    form.ShowDialog()
    
    
                End If
    
    
            Next
    
        End Sub
    
        Private Sub Pasado_manana_()
    
            For Each diasDelMes In Dias
    
                If System.DateTime.Now.Day + 2 = diasDelMes Then
                    Dim form As New Form
    
                    form.Text = "Pagina Del Dia " & diasDelMes
    
                    form.ShowDialog()
                End If
    
    
            Next
    
        End Sub
    
        Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
            Me.Pasado_manana_()
        End Sub
    
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Me.Ahora_()
        End Sub
    
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Me.Button1.Text = "Ahora"
            Me.Button2.Text = "Manana"
            Me.Button3.Text = "Pasado Manana"
        End Sub
    
        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            Me.Manana_()
        End Sub


    Conforme presiones un boton se te mostrara un formulario mira en el formularo se muestra el texto de la fecha

    Bueno en lugar del formulario pon la pagina que deseas Cargar


    Saluodos
    Melvin

    Todo Es posible si se studia con exfuerso no importando los de mas Dios esta con nosotros y no hay mas sabiduria que la de Dios, Everything is posible if you study a lot wiht esforce , God Loves us and there isn't anybody like God.... Melvin Saludos
    domingo, 21 de junio de 2009 18:55
  • Este está de lujo. Lo entiendo casi todo, y funciona muy bien.
    Voy a trastearlo para ponerlo a punto.

    Mientras plantearé otra cuestíon, y es que también me interesaría que se guardase un registro de los días que van pasando, aunque no es algo realmente importante o necesario, es solo por darle mas funcionalidad. Si es complicado no hace falta hacerlo.

    Bueno, seguro que me salen más dudas.
    Gracias
    domingo, 21 de junio de 2009 19:09
  • Ohhh   Lo Ideal seria que te crearas una base de datos o Crear Archivios como txt donde guardes informacion
     Pero no se que toipo decides Una Base de datos o Un Txt un Txt Es Un Archivo que se habre con el block de notas  y bueno una base de datos son las que se crean con Sql ?????????? 


    Todo Es posible si se studia con exfuerso no importando los de mas Dios esta con nosotros y no hay mas sabiduria que la de Dios, Everything is posible if you study a lot wiht esforce , God Loves us and there isn't anybody like God.... Melvin Saludos
    domingo, 21 de junio de 2009 19:29