Visualizzazione dei risultati da 1 a 10 su 27

Visualizzazione discussione

  1. #11
    Utente di HTML.it L'avatar di e444
    Registrato dal
    Jan 2012
    Messaggi
    37
    allora... provo a spiegarmi così...

    57736703LkQ.jpg

    Per capirci...
    Questa è il form principale
    c'è una textbox dove si inserisce il nome di un candidato al colloquio
    c'è alla destra c'è una combobox per stabilire le ore di partenza del colloquio (da 1 a 4)
    c'è un ovalschape (pallino rosso) che è il pulsante di avvio del colloquio.
    Da notare sotto la label indicante i 3600 secondi ancora da avviare.
    Andando nella vista codice, il tutto è comandato dall'evento click sull'ovalshape.
    nelle dichiarazioni delle variabili troviamo questi parametri... oltre ad altri che servono ad altro...

    codice:
    Public Class FormColloqui
        Dim HH As Integer
        Dim LineaNumero As Integer
        Dim LineaPerPagina As Integer
        Dim I_Avvio As Integer
        Dim I_Conta As Integer
        Dim Records As String = My.Computer.FileSystem.CurrentDirectory + "\Dati\Colloqui-del-" & Format(Now, "dd-MM-yyyy") & ".dat"
        Dim Backup As String = ("C:\Dati_Colloqui_Backup") + "\Colloqui-del-" & Format(Now, "dd-MM-yyyy") & ".dat"
        Dim Durata As Integer = 3600
        Dim t1 As Integer = 3600 't1 corrisponde a 1 ora
        Dim t2 As Integer = 7200 't2 corrisponde a 2 ore
        Dim t3 As Integer = 10800 't3 corrisponde a 3 ore
        Dim t4 As Integer = 14400 't4 corrisponde a 4 ore
        Public contatore As Integer = 0
    Evento click sul pallino

    codice:
    Private Sub OSSala1Posto1_Click(sender As System.Object, e As System.EventArgs) Handles OSSala1Posto1.Click
            'evento click sul pallino ovalshape gestito da un select case
            'le casistiche cambiano in base al colore del pallino
            Select Case OSSala1Posto1.FillColor
                'se il pallino è ROSSO
                Case Color.Red
                    'verifica che sia inserito un nome nella textbox, in caso contrario
                    If TBSala1Posto1.Text = "" Then
                        'un messaggio avvisa che non ci sono nomi nella postazione
                        MsgBox("Nessun candidato è nella postazione 1.")
                        'esce dalla sub
                        Exit Sub
                    End If
                    'verifica che sia selezionata almeno una delle 4 opzioni di durata del colloquio
                    If CBSala1Posto1.Text = "" Then
                        'in caso contrario mostra messaggio di assenza ed esce dalla sub
                        MsgBox("Al candidato " & TBSala1Posto1.Text.ToUpper & " Non hai specificato la durata del colloquio.")
                        Exit Sub
                        'se tutto è ok allora...
                    Else
                        'colora il pallino di verde
                        OSSala1Posto1.FillColor = Color.Lime
                        'disabilita la textbox per non modificare o cancellare i dati
                        TBSala1Posto1.Enabled = False
                        'diabilita la combobox per non modificare o cancellare i dati
                        CBSala1Posto1.Enabled = False
                        'imposta la label "InizioS1P1" nel formato orario attuale nelle 24 ore.
                        InizioS1P1.Text = Format(Now, "HH:mm")
                        'avvia il Timer
                        TimerS1P1.Start()
                    End If
                    'se il pallino è GIALLO
                Case Color.Yellow
                    'colora il pallino di ROSSO
                    OSSala1Posto1.FillColor = Color.Red
                    'resetta lo sfondo della textbox
                    TBSala1Posto1.BackColor = SystemColors.Window
                    'abilita la textbox
                    TBSala1Posto1.Enabled = True
                    'abilita la combobox
                    CBSala1Posto1.Enabled = True
                    'cancella il nominativo nella textbox
                    TBSala1Posto1.Text = ""
                    'cancella la durata dalla combobox
                    CBSala1Posto1.Text = ""
                    'resetta la label "inizio" colloquio
                    InizioS1P1.Text = "00.00"
                    'resetta la laber "fine" colloquio
                    FineS1P1.Text = "00.00"
                    'se il pallino è VERDE
                Case Color.Lime
                    'rinomina la label2 nel FormScelta
                    FormScelta.Label2.Text = "S1P1"
                    'mostra il Form
                    FormScelta.ShowDialog()
                    'se il pallino è GRIGIO
                Case Color.Gray
                    'Mostra messaggio ed esci dalla sub
                    MsgBox("Questa postazione è disabilitata")
                    Exit Sub
            End Select
        End Sub
    Impostazione della Label del timer, cambia la label in base a quante ore l'utente dichiara di fare.

    codice:
     Public Sub CBSala1Posto1_SelectedIndexChanged(sender As Object, e As System.EventArgs) Handles CBSala1Posto1.SelectedIndexChanged
            'se è selezionato l'item 0, la label sarà rinominata con il t1 che corrisponde a "3600".
            If CBSala1Posto1.SelectedIndex = "0" Then
                LBTimerS1P1.Text = t1
            End If
            'se è selezionato l'item 1, la label sarà rinominata con il t2 che corrisponde a "7200".
            If CBSala1Posto1.SelectedIndex = "1" Then
                LBTimerS1P1.Text = t2
            End If
            'se è selezionato l'item 2, la label sarà rinominata con il t3 che corrisponde a "10800".
            If CBSala1Posto1.SelectedIndex = "2" Then
                LBTimerS1P1.Text = t3
            End If
            'se è selezionato l'item 3, la label sarà rinominata con il t4 che corrisponde a "14400".
            If CBSala1Posto1.SelectedIndex = "3" Then
                LBTimerS1P1.Text = t4
            End If
        End Sub
    Gestione del Timer Tick

    codice:
    Private Sub TimerS1P1_Tick(sender As System.Object, e As System.EventArgs) Handles TimerS1P1.Tick
    
            'ad ogni 1000 millisecondi, scala il numero della label di "1"
            LBTimerS1P1.Text -= 1
    
            'quando la label è uguale a "0"...
            If LBTimerS1P1.Text = 0 Then
                OSSala1Posto1.FillColor = Color.Yellow
                TBSala1Posto1.BackColor = Color.Gold
                TimerS1P1.Stop()
                FineS1P1.Text = Format(Now, "HH:mm")
                Notifica.Show()
                contatore += 1
                ListView1.Items.Add(contatore)
                ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(TBSala1Posto1.Text)
                ListView1.Items(ListView1.Items.Count - 1).SubItems.Add("1")
                ListView1.Items(ListView1.Items.Count - 1).SubItems.Add("1")
                ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(CBSala1Posto1.Text)
                ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(InizioS1P1.Text)
                ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(FineS1P1.Text)
                ListView1.Items(ListView1.Items.Count - 1).SubItems.Add(LBNote.Text)
                LBNote.Text = "n.n."
            End If
            If File.Exists(Records) = False Then
                Using CreaRecords As New StreamWriter(Records)
                    For CFR = 0 To ListView1.Items.Count - 1
                        CreaRecords.WriteLine(ListView1.Items(CFR).Text)
                        CreaRecords.WriteLine(ListView1.Items(CFR).SubItems(1).Text)
                        CreaRecords.WriteLine(ListView1.Items(CFR).SubItems(2).Text)
                        CreaRecords.WriteLine(ListView1.Items(CFR).SubItems(3).Text)
                        CreaRecords.WriteLine(ListView1.Items(CFR).SubItems(4).Text)
                        CreaRecords.WriteLine(ListView1.Items(CFR).SubItems(5).Text)
                        CreaRecords.WriteLine(ListView1.Items(CFR).SubItems(6).Text)
                        CreaRecords.WriteLine(ListView1.Items(CFR).SubItems(7).Text)
                    Next
                    CreaRecords.Close()
                End Using
            Else
                Using CreaRecords As New StreamWriter(Records)
                    For CFR2 = 0 To ListView1.Items.Count - 1
                        CreaRecords.WriteLine(ListView1.Items(CFR2).Text)
                        CreaRecords.WriteLine(ListView1.Items(CFR2).SubItems(1).Text)
                        CreaRecords.WriteLine(ListView1.Items(CFR2).SubItems(2).Text)
                        CreaRecords.WriteLine(ListView1.Items(CFR2).SubItems(3).Text)
                        CreaRecords.WriteLine(ListView1.Items(CFR2).SubItems(4).Text)
                        CreaRecords.WriteLine(ListView1.Items(CFR2).SubItems(5).Text)
                        CreaRecords.WriteLine(ListView1.Items(CFR2).SubItems(6).Text)
                        CreaRecords.WriteLine(ListView1.Items(CFR2).SubItems(7).Text)
                    Next
                    CreaRecords.Close()
                End Using
            End If
            If File.Exists(Backup) = False Then
                Using CreaBackup As New StreamWriter(Backup)
                    For CFR = 0 To ListView1.Items.Count - 1
                        CreaBackup.WriteLine(ListView1.Items(CFR).Text)
                        CreaBackup.WriteLine(ListView1.Items(CFR).SubItems(1).Text)
                        CreaBackup.WriteLine(ListView1.Items(CFR).SubItems(2).Text)
                        CreaBackup.WriteLine(ListView1.Items(CFR).SubItems(3).Text)
                        CreaBackup.WriteLine(ListView1.Items(CFR).SubItems(4).Text)
                        CreaBackup.WriteLine(ListView1.Items(CFR).SubItems(5).Text)
                        CreaBackup.WriteLine(ListView1.Items(CFR).SubItems(6).Text)
                        CreaBackup.WriteLine(ListView1.Items(CFR).SubItems(7).Text)
                    Next
                    CreaBackup.Close()
                End Using
            Else
                Using CreaBackup As New StreamWriter(Backup)
                    For CFR2 = 0 To ListView1.Items.Count - 1
                        CreaBackup.WriteLine(ListView1.Items(CFR2).Text)
                        CreaBackup.WriteLine(ListView1.Items(CFR2).SubItems(1).Text)
                        CreaBackup.WriteLine(ListView1.Items(CFR2).SubItems(2).Text)
                        CreaBackup.WriteLine(ListView1.Items(CFR2).SubItems(3).Text)
                        CreaBackup.WriteLine(ListView1.Items(CFR2).SubItems(4).Text)
                        CreaBackup.WriteLine(ListView1.Items(CFR2).SubItems(5).Text)
                        CreaBackup.WriteLine(ListView1.Items(CFR2).SubItems(6).Text)
                        CreaBackup.WriteLine(ListView1.Items(CFR2).SubItems(7).Text)
                    Next
                    CreaBackup.Close()
                End Using
            End If
        End Sub
    Immagini allegate Immagini allegate
    Ultima modifica di e444; 05-01-2018 a 04:58

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.