Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2014
    Messaggi
    76

    [VB2010] DateTimePicker formato HH:mm incremento ore

    Ciao a tutti,
    ho un oggetto DateTimePicker che ho impostato con Formato Custom HH:mm con ShowUpDown = True.
    Sul ChangedValue vorrei incrementare le ore nel passaggio da 59min a 00min
    e decrementarle nel passaggio tra 00min e 59min.

    Quindi sono a 08:59 e premo Up (^) e passa a 09:00 (al momento passa semplicemente a 08:00)

    Se invece sono a 09:00 e premo Down (V) e passa a 08:59 (al momento passa semplicemente a 09:00)

    Si puo' fare settando ad hoc qualche proprieta'?

    Altrimenti come riesco a recuperare il valore "vecchio" per capire se devo incrementare o dimunuire di un'ora?

    In alternativa e' possibile sapere se "arrivo" al change da un incremento (ho appena premuto Up (^)) o da un decremento (ho appena premuto Down (V))?

    Vi Ringrazio In anticipo per l'aiuto.
    Ultima modifica di Mrk31; 23-02-2015 a 18:28

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2014
    Messaggi
    76
    Quote Originariamente inviata da gibra Visualizza il messaggio
    Hai provato ad usare la funzione DateAdd?

    Funzione DateAdd
    https://msdn.microsoft.com/it-it/lib...(v=vs.90).aspx
    No, io in realta' mi limoto a settarne il Value con una stringa compatibile con il formato HH:mm.
    Passandogli un'oggetto data o ora invece dovrebbe aggiornare le ore in base ai muniti???

  4. #4
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Quote Originariamente inviata da Mrk31 Visualizza il messaggio
    No, io in realta' mi limoto a settarne il Value con una stringa compatibile con il formato HH:mm.
    Sbagliato.

    Quote Originariamente inviata da Mrk31 Visualizza il messaggio
    Passandogli un'oggetto data o ora invece dovrebbe aggiornare le ore in base ai muniti???
    Non capisco il senso di questa domanda, e ancor più non capisco perché la fai.

    La tua domanda mi fa credere che tu non abbia letto cosa fa la funzione.

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2014
    Messaggi
    76
    Quote Originariamente inviata da gibra Visualizza il messaggio
    Sbagliato.
    Innanzitutto grazie per l'aiuto.

    Io per il momento settavo data e ora come value nel formato corretto e VB li sostituiva nel valore ("completo" con anche la data) di default che credo fosse relativo alla creazione dell'oggetto.

    Mi dici che converrebbe "passare" per la funzione che mi hai linkato o per quelle piu' specifiche dell'oggetto DateTime per l'inizializzazione del campo, e' una pura questione di forma? che vantaggi concreti otterrei???

    Quote Originariamente inviata da gibra Visualizza il messaggio
    Non capisco il senso di questa domanda, e ancor più non capisco perché la fai.

    La tua domanda mi fa credere che tu non abbia letto cosa fa la funzione.
    In effetti non mi sono spiegato tanto bene.
    Ho letto la documentazione che mi hai linkato, ma accenna solamente al fatto che se io impostassi un 31 febbraio si limita a correggerla al 28 (o 29 se bisestile), ma non dice niente in merito a come gestisce il "cambio ora" negli incrementi o decrementi.

    In ogni caso non mi rosolve il problema perche' l'add me lo fanno i freccia su/freccia giu' del campo DateTimePicker io mi accorgo solamente che c'e' stato un "change" ma una volta all'interno del change non so se il valore dei minuti e' stato incrementato o diminuito e quindi agire di conseguenza.

    Per fare cio' mi servirebbe riuscire a capire quale tasto e' stato premuto se Up o Down in quel caso allora saprei come settare correttamente la funzione che mi consigli o comunque continuare con l'aggoirnamento del Value.

    In alternativa mi servirebbe conoscere il valore del campo appena prima del "change" in modo da confrontarlo con l'attuale.
    Ultima modifica di Mrk31; 25-02-2015 a 10:18

  6. #6
    Per fare cio' mi servirebbe riuscire a capire quale tasto e' stato premuto se Up o Down in quel caso allora saprei come settare correttamente la funzione che mi consigli o comunque continuare con l'aggoirnamento del Value.
    nei tasti su/giù incrementi o decrementi il valote di 1.

    ciao
    --

    __ [ K3iji ] __

  7. #7
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Quote Originariamente inviata da Mrk31 Visualizza il messaggio
    Innanzitutto grazie per l'aiuto.
    Prego.


    Quote Originariamente inviata da Mrk31 Visualizza il messaggio
    Ho letto la documentazione che mi hai linkato, ma accenna solamente al fatto che se io impostassi un 31 febbraio si limita a correggerla al 28 (o 29 se bisestile), ma non dice niente in merito a come gestisce il "cambio ora" negli incrementi o decrementi.
    Quelle sono NOTE, devi studiarti i Parametri e le Impostazioni per capire come funziona.

    In sostanza, DateAdd (lo dice il nome stesso) aggiunge, se vuoi: incrementa, un determinato valore ad un'altro.

    Quote Originariamente inviata da Mrk31 Visualizza il messaggio
    In ogni caso non mi rosolve il problema perche' l'add me lo fanno i freccia su/freccia giu' del campo DateTimePicker io mi accorgo solamente che c'e' stato un "change" ma una volta all'interno del change non so se il valore dei minuti e' stato incrementato o diminuito e quindi agire di conseguenza.
    Per questo basta :
    - tenere nota in una variabile del valore precedente, e confrontarlo
    - controllare l'evento KeyDown, che ti da il tasto premuto (quindi se premi Down o Up)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.