GESTIONE ROTAZIONE DI UNA SQUADRA DI PALLAVOLO

di il
19 risposte

19 Risposte - Pagina 2

  • Re: GESTIONE ROTAZIONE DI UNA SQUADRA DI PALLAVOLO

    22/01/2025 - renato ha scritto:

    Scusate il disturbo. Ho sessanta anni e senza l'aiuto di nessuno ho imparato per divertimento prima il qbasic e poi il visual basic. Capisco che voi abbiate fatto sacrifici ma credo che sia per lavorp che lo avete fatto. Ho comprato libri ma il mio livello di intelligenza non riesce a capire come creare tabelle in un dtabase Vb. Fa niente, proverò a risolvere il mio problema con le mie conoscenze. grazie lo stesso a tutti

    Ciao, non mi hai risposto,... comunque...  se non hai dimestichezza con una certa programmazione, allora potresti fare una cosa molto semplice, al volo e volatile... quindi poco affidabile ma fattibile con strumenti semplici semplici come una Form, delle TextBox, un Array e un Button

    • Crea una form
    • Inserisci nella form 6 textbox ( TextBox1, TextBox2, TextBox3,TextBox4, TextBox5 e TextBox6 )
    • Crea un array per esempio di nome ArrayRotazioni con 6 elementi , esempio:
      • Dim ArrayRotazioni(1 To 6) As Integer
    • In open form assegna dei valori di default alle 6 TextBox: esempio
      • TextBox1.Text = 1
      • TextBox2.Text = 2
      • TextBox3.Text = 3
      • TextBox4.Text = 4
      • TextBox5.Text = 5
      • TextBox6.Text = 6
    • Poi passa i dati per inizializzare l'array, per esempio:
      • ArrayRotazioni(1) = TextBox1.Text
      • ArrayRotazioni(2) = TextBox2.Text
      • ArrayRotazioni(3) = TextBox3.Text
      • ArrayRotazioni(4) = TextBox4.Text
      • ArrayRotazioni(5) = TextBox5.Text
      • ArrayRotazioni(6) = TextBox6.Text  
    • Inerisci nella form un Button per esempio di nome ButtonRotazione e su evento Click farai eseguire la  rotazione ad ogni cambio palla
    • Nella Form, come da esempio sotto riportato, potrai inserire l'effettivo numero di ogni giocatore e aggiornarlo con le eventuali sostituzioni mano amano che si svolge il Set.

    Fatti questi passaggi preliminari dove inizializzi e aggiorni le TextBox e gli elementi dell'Array, a questo punto esegui la rotazione premendo sul pulsante ButtonRotazione e nell'evento Click ti basterà eseguire uno switch dei valori assegnati all'Array, 

    Esempio:

    Private Sub ButtonRotazione_Click()
        ' set variables
        Dim i As Integer
        Dim myFirst As Integer
        ' save the first position
        myFirst = ArrayRotazioni(1)
        ' move items
        For i = 1 To 5
            ArrayRotazioni(i) = ArrayRotazioni(i + 1)
        Next i
        ' set the first position
        ArrayRotazioni(6) = myFirst
        ' update TextBox
        UpdateTextBoxes
    End Sub

    e alla fine , come puoi vedere sopra, si passano i nuovi valori dell'Array alle TextBox della Form

    Private Sub UpdateTextBoxes()
        TextBox1.Text = ArrayRotazioni(1)
        TextBox2.Text = ArrayRotazioni(2)
        TextBox3.Text = ArrayRotazioni(3)
        TextBox4.Text = ArrayRotazioni(4)
        TextBox5.Text = ArrayRotazioni(5)
        TextBox6.Text = ArrayRotazioni(6)
    End Sub

    Se sei in grado e se esistono, puoi reperire la "formazione iniziale" dal database che stai utilizzando. Quindi le TextBox le valorizzi con tali valori che hai già.

    A parte la Grafica ;-))) .... Soluzione che ho definito al Volo e Volatile in quanto lavora solo in memoria con l'array e questo vuol dire che se chiudi la form o l'applicazione, ovviamente perderai le informazioni che avrai memorizzato con i cambi e le rotazioni.
    Per avere la rotazione anche per l'altra squadra, basterà duplicare le TextBox con nomi diversi, l'array con nome diverso e il Button con nome diverso, etc etc ... o altri metodi che meglio preferisci adottare.
    Soluzione semplice, delicata e poco raccomandabile, però funziona....  ;-)

  • Re: GESTIONE ROTAZIONE DI UNA SQUADRA DI PALLAVOLO

    Scusami ma non avevo letto il tuo messaggio. Mi ero fermato al precedente. Dunque ti spiego quello che ho fatto: in una form ho inserito delle list per visualizzare il punteggio, i set e i time out di ogni squadra. Poi ho inserito dei command per aumentare o diminuire i punteggi e dei command per la richiesta dei time out. In quest'ultimo caso apro un'altra form dove viene visualizzato il punteggio, i set e i time out (che cambiano colore a seconda delel chiamate: bianco=0, verde=1, rosso=2, al terzo appare una list che indica la voce" Chiamata Inappropriata" ) e un conteggio a ritroso a partire da 30 sec. Arrivato a zero sec suona la sirena e ritorna al form principale, Ultimamente ho aggiunto, al form principale, anche due pulsanti, uno per squadra, per far vedere il numero delle sostituzioni ( anche in questo caso usando list colorate: le prime due verdi, poi due arancioni e la quinta rossa) in modo che gli allenatori si rendano conto della situazione. Il tutto utilizzando un database (comando Open, Get, Put, Close) . Il programma inizia con la richiesta della categoria di partita che si giocherà ( le Under 12 fanno tre set mentre tutte le altre ne fanno 5) poi si apre un secondo form dove (tramite un altro database) girano in maniera random i nostri sponsor e ha un command che da inizio alla partita. Tramite due textbox viene richiesto se la nostra squadra è la squadra A e se è in battuta. A questo punto si apre il form dove appare il risultato. Ora vorrei inserire nel form degli sponsor un command per squadra dove inserire il numero delle giocatrici che occupano le sei posizioni originali. nel form del punteggio non si deve vedere il giro. In automatico, ad ogni cambio palla si deve aggiornare, e solo a richiesta tramite un command deve aprirsi un altro form in cui si vede solo la squadra che ha richiesto il "giro". quindi siccome c'è un continuo passaggio di form devo per forza creare un database. Per aggiornarlo ho pensato di crearne un secondo dove spostare il numero delle giocatrici di una casella in senso orario e poi copiarlo nel primo. Non volevo che mi facevate un corso oppure comprare libri. Volevo solo sapere se stavo prendendo una strada larga o se la mia idea era una scorciatoia. Da ventidue anni faccio il camionista di lavoro eppure ogni volta che incontro un collega in difficoltà non gli ricordo come si ottiene la patente o di comprarsi un navigatore. Se posso lo aiuto e basta. Ti ringrazio By65franco ma ormai ho deciso: sabato mattina andrò in palestra e comincerò a creare i deu database. poi vedrò se riesco altrimenti non si farà nulla. 

  • Re: GESTIONE ROTAZIONE DI UNA SQUADRA DI PALLAVOLO

    @Renato, l'eta' non e' un problema (lo so per esperienza diretta :-) )
    Al limite e' un problema di COSA STUDIARE. E' qui' E' FACILE:
    ti basta leggere che cosa dice wikipedia su "Modello relazionale".

    https://it.wikipedia.org/wiki/Modello_relazionale

    E' OVVIO che non starai 5 minuti per capire tutto! 
    MA NON SERVE essere Ingegneri Aerospaziali o superintelligenti o chissa che. 
    BASTA saper leggere e scrivere e pigiare qualche tasto sulla tastiera.
    Cosa che tu sai fare.
    Ci vuole solo buona volonta e un po' di tempo.

    Ci sono fior fiore di libri su Amazon. 
    Se non va bene il primo, acquistane un'altro.

    Inoltre siamo qui' anche per "chiarire" concetti che non si sono capiti.
    Ma di certo, andando a "tentoni" non caverai un ragno dal buco (povero ragno E povero buco :-))

    Inoltre, STUDIANDO, imparerai anche la "terminologia corretta" e non userai termini in modo errato.

    ""devo per forza creare un database""

    TU NON CREI database, al piu' tabelle!

    ""(1) Non volevo che mi facevate un corso oppure (2) comprare libri""

    Per (1), fare un corso di database via post sarebbe decisamente complicato
    Per (2), direi che parti con il piede sbagliato.

    Primo, SI STUDIA, secondo, SUI LIBRI.
    .
    Lo so, non e' d'aiuto, MA diventa difficile aiutarti SE non capisci l'aiuto che ti viene dato.

  • Re: GESTIONE ROTAZIONE DI UNA SQUADRA DI PALLAVOLO

    22/01/2025 - migliorabile ha scritto:

    @Renato, l'eta' non e' un problema (lo so per esperienza diretta :-) )
    Al limite e' un problema di COSA STUDIARE. E' qui' E' FACILE:
    ti basta leggere che cosa dice wikipedia su "Modello relazionale".

    https://it.wikipedia.org/wiki/Modello_relazionale

    E' OVVIO che non starai 5 minuti per capire tutto! 
    MA NON SERVE essere Ingegneri Aerospaziali o superintelligenti o chissa che. 
    BASTA saper leggere e scrivere e pigiare qualche tasto sulla tastiera.
    Cosa che tu sai fare.
    Ci vuole solo buona volonta e un po' di tempo.

    Ci sono fior fiore di libri su Amazon. 
    Se non va bene il primo, acquistane un'altro.

    Inoltre siamo qui' anche per "chiarire" concetti che non si sono capiti.
    Ma di certo, andando a "tentoni" non caverai un ragno dal buco (povero ragno E povero buco :-))

    Inoltre, STUDIANDO, imparerai anche la "terminologia corretta" e non userai termini in modo errato.

    ""devo per forza creare un database""

    TU NON CREI database, al piu' tabelle!

    ""(1) Non volevo che mi facevate un corso oppure (2) comprare libri""

    Per (1), fare un corso di database via post sarebbe decisamente complicato
    Per (2), direi che parti con il piede sbagliato.

    Primo, SI STUDIA, secondo, SUI LIBRI.
    .
    Lo so, non e' d'aiuto, MA diventa difficile aiutarti SE non capisci l'aiuto che ti viene dato.

    Scusa ma nel 1996 avevo fatto un corso di qbasic e mi avevano detto che il comando open serviva ad aprire un database e il comando close per chiuderlo. sicuramente ho frainteso 

  • Re: GESTIONE ROTAZIONE DI UNA SQUADRA DI PALLAVOLO

    22/01/2025 - renato ha scritto:

    Volevo solo sapere se stavo prendendo una strada larga o se la mia idea era una scorciatoia. Da ventidue anni faccio il camionista di lavoro eppure ogni volta che incontro un collega in difficoltà non gli ricordo come si ottiene la patente o di comprarsi un navigatore. Se posso lo aiuto e basta. Ti ringrazio By65franco ma ormai ho deciso: sabato mattina andrò in palestra e comincerò a creare i deu database. poi vedrò se riesco altrimenti non si farà nulla. 

    Ciao, se posso devo dirti che non sei sulla strada giusta. In poche parole... non si fa in quel modo. 

    Quello  che si deve fare è lavorare, come già detto e proposto nei post precedenti, dal sottoscritto e dagli altri intervenuti, in una nuova tabella da inserire nel database.

    Questa nuova tabella terrà traccia della formazione di base, le sostituzioni e le rotazioni.

    In essa si memorizzano gli eventi come le Sostituzioni, e le rotazioni, quindi ogni record contiene lo stato delle rotazioni che si sono verificate durante il Set della partita. 
    Questo consente di andare anche a ritroso per ricostruire le varie posizioni per ogni rotazione che si è verificata e quindi stabilire se ci sono state delle infrazioni e nel caso correggere le posizioni dei giocatori che attualmente sono in campo.

    Per esempio questa tabella conterrà le seguenti fields:

    • Tipo squadra Ospiti o di Casa
    • Numero del Set
    • Numero rotazione (per esempio da 1 a enne)
    • Le sei posizioni
    • i Sei giocatori che occupano le sei posizioni
    • Eventuali altre info utili per risalire (tramite apposite chiavi) alla partita in corso che si relaziona con le tabelle già in essere nel database

    A questo punto hai tutto quello che occorre per popolare una Form (su richiesta) che faccia vedere come devono essere posizionati in campo i sei giocatori in un momento qualsiasi della partita.

    Se "minimo" non viene svolto almeno quanto sopra riportato, è assai improbabile percorrere altre strade più o meno tortuose e inappropriate.

    Detto questo e non conoscendo come è organizzato il tuo database, l'esempio che ti ho fatto in precedenza con l'utilizzo di un Array, assolve semplicemente allo scopo. 
    Pertanto a questo punto ti basta sostituire la gestione di un Array con la gestione delle informazioni nella Tabella con i metodi sopra già descritti.

    Non sai come realizzare questa analisi appena fatta? che problemi ci sono?... devi prenderlo come punto di partenza, o come spunto, per approcciare uno sviluppo corretto per la tua applicazione. 
    Comporta approfondire cose che non conosci? bene !!! cogli l'occasione per implementare le tue conoscenze.
    Alla fine, se ti piace la programmazione, in questo modo hai la possibilità anche di divertirti con nuovi argomenti e con cose che ancora non conosci.

Devi accedere o registrarti per scrivere nel forum
19 risposte