Candidate-7-Pro/FrmInput2.vb
2021-09-10 01:15:10 +02:00

246 lines
12 KiB
VB.net

Public Class FrmInput2
REM variables public a la feuille (classe)
Dim tme() As String = {"Allemand", "Anglais", "Astronomie", "Biologie", "Espagnol", "Français", "Géographie", "Géologie", "Histoire", "Mathématique", "Philosophie", "Russe"}
Dim tmo() As String = {"Allemand", "Anglais", "Astronomie", "Espagnol", "Histoire", "Russe", "Lancer", "Natation", "Saut"}
Dim treg() As String = {"Auvergne", "Bordelais", "Bretagne", "Morvan", "Nord", "Normandie", "Paris", "Poitou"}
Dim ctro As Integer
Dim ctre As Integer
Private Sub FrmIsc3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim i As Integer REM pour les for
Dim CB As CheckBox REM pour les for checkbox
i = 0
For Each CB In GBEcrit.Controls REM Charge l'écrit
CB.Text = tme(i)
i += 1
Next
i = 0
For Each CB In GBOral.Controls REM Charge l'oral
CB.Text = tmo(i)
i += 1
Next
i = 0
For i = 0 To UBound(treg)
CboRegion.Items.Add(treg(i))
Next
LblNP.Text = FrmInput1.TxtNom.Text & " " & FrmInput1.TxtPrenom.Text REM Reprend le nom et le prénom depuis la feuille input1.
If FrmAccueil.Boule = True Then REM edition
Me.Tag = "Assistant édition de candidature (3/4)"
CboRegion.SelectedIndex = FrmAccueil.cddts.Region
For Each CB In GBEcrit.Controls
For i = 0 To UBound(FrmAccueil.cddts.Ecrit)
If FrmAccueil.cddts.Ecrit(i) = CB.Text Then CB.Checked = True
Next i
Next
For Each CB In GBOral.Controls
For i = 0 To UBound(FrmAccueil.cddts.Oral)
If FrmAccueil.cddts.Oral(i) = CB.Text Then CB.Checked = True
Next
Next
If FrmAccueil.cddts.Fac = Nothing Then
RBno.Checked = True
Else
RBYes.Checked = True
CboFac.SelectedIndex = FrmAccueil.cddts.Fac
End If
CmdPre.Visible = True
LblCaR.Visible = False
LblNP.Text = FrmEdit.SelectedID & " - " & FrmInput1.TxtNom.Text & " " & FrmInput1.TxtPrenom.Text REM Ajoute l'identifiant en cas de modifications.
End If
If FrmAccueil.Boule = False Then REM inscription
Me.Tag = "Assistant création de candidature (3/4)"
LblCaR.Tag = 75
RBno.Checked = True
PnlFac.Visible = False
RBno.Checked = True
CboRegion.SelectedIndex = 0 REM met premier en tête...
TmrCaR.Start() REM timer start
End If
End Sub
Private Sub CmdAnnul_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmdAnnul.Click
TmrCaR.Stop() REM fin timmer
FrmEdit.Close() REM ferme toutes les fenètres...
FrmNouv.Close()
FrmInput1.Close()
Me.Close()
FrmAccueil.Show() REM retour a l'accueil
End Sub
Private Sub TmrCaR_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TmrCaR.Tick
LblCaR.Tag -= 1
If LblCaR.Tag >= 60 Then
Me.Text = Me.Tag & " | " & FrmAccueil.Horaire & " | Temps restant : 1:" & Format(LblCaR.Tag - 60, "00")
End If
If LblCaR.Tag < 60 And LblCaR.Tag > 0 Then
Me.Text = Me.Tag & " | " & FrmAccueil.Horaire & " | Temps restant : " & LblCaR.Tag
End If
If LblCaR.Tag = 0 Then
Me.Text = Me.Tag & " | " & FrmAccueil.Horaire
End If
If LblCaR.Tag <= 1 Then
LblCaR.Text = "Vous disposez de " & LblCaR.Tag & " seconde restante."
End If
If LblCaR.Tag > 61 Then
LblCaR.Text = "Vous disposez d'une minute et " & LblCaR.Tag - 60 & " secondes restantes."
End If
If LblCaR.Tag = 61 Then
LblCaR.Text = "Vous disposez d'une minute et " & LblCaR.Tag - 60 & " seconde restante."
End If
If LblCaR.Tag <= 60 And LblCaR.Tag <> 1 Then
LblCaR.Text = "Vous disposez de " & LblCaR.Tag & " secondes restantes."
End If
If LblCaR.Tag <= 10 Then
LblCaR.ForeColor = Color.Red
End If
If LblCaR.Tag <= 0 Then
TmrCaR.Stop()
LblCaR.Text = "Le temps impartie est écoulée."
MsgBox("Le temps impartie est écoulé. L'inscription a échoué.", MsgBoxStyle.Exclamation, "Echec")
FrmEdit.Close()
FrmInput1.Close()
FrmNouv.Close()
Me.Close()
FrmAccueil.Show()
End If
End Sub
Private Sub CmdNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmdNext.Click
'Dim OK As Boolean
If ctre + ctro = 7 Then
TmrCaR.Stop()
Me.Hide()
FrmInput3.Show()
Else : MsgBox("Vous devez choisir 4 examens écrits et 3 examens oraux. (Vous pouvez dès lors choisir des examens facultatifs.", MsgBoxStyle.Exclamation, "Erreur")
End If
End Sub
Private Sub CmdDelet_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Dim quit As Integer
quit = MsgBox("Vous êtes sur le point de supprimer une candidature. Voulez-vous continuer ?", MsgBoxStyle.YesNo + MsgBoxStyle.Question, "Suppression d'un candidat")
If quit = 6 Then
MsgBox("Le Candidat a bien été supprimé.", MsgBoxStyle.Information, "Information")
FrmEdit.Close()
FrmNouv.Close()
FrmInput1.Close()
Me.Close()
FrmAccueil.Show()
End If
End Sub
Private Sub CmdPre_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CmdPre.Click
REM retour au précédant
Me.Hide()
FrmInput1.Show()
End Sub
REM Dans le panel pour les examens facultatifs
Private Sub RB_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RBno.CheckedChanged, RBYes.CheckedChanged
If RBno.Checked Then
RBYes.Checked = False
LblFac2.Visible = False
CboFac.Visible = False
GBEcrit.Enabled = True
GBOral.Enabled = True
End If
If RBYes.Checked Then
RBno.Checked = False
LblFac2.Visible = True
CboFac.Items.Clear() REM Efface la liste des exams facultatifs
Dim Chb As CheckBox
For Each Chb In GBEcrit.Controls REM Construit la liste des exams facultatifs. Il est plus intelligent de le mettre là plutôt que dans la fonction DeclencheurdeFacultatif car il est recalculé après avoir choisit la possibilité des examens, et non a chaque clique des cases. De plus, ca pose un problème de reset.
If Chb.Checked = False Then CboFac.Items.Add(Chb.Text)
Next
For Each Chb In GBOral.Controls
If Chb.Checked = False Then CboFac.Items.Add(Chb.Text)
Next
CboFac.Visible = True
CboFac.SelectedIndex = 0 REM met premier en tête...
GBEcrit.Enabled = False
GBOral.Enabled = False
End If
End Sub
Private Sub SecureEcritMAX4(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged, CheckBox2.CheckedChanged, CheckBox3.CheckedChanged, CheckBox4.CheckedChanged, CheckBox5.CheckedChanged, CheckBox6.CheckedChanged, CheckBox7.CheckedChanged, CheckBox8.CheckedChanged, CheckBox9.CheckedChanged, CheckBox10.CheckedChanged, CheckBox11.CheckedChanged, CheckBox12.CheckedChanged
If sender.checkstate = CheckState.Checked Then
ctre += 1
If ctre > 4 Then
MsgBox("Vous ne pouvez pas choisir plus de 4 examens ecrits.", MsgBoxStyle.Exclamation, "Erreur")
sender.checkstate = CheckState.Unchecked
End If
Else
ctre -= 1
End If
DeclencheurDeFacultatif() REM Appelle la fonction qui déclenche l'affichage du choix de l'exam facultatif
REM Regule l'affichage du nombre d'examen choisit.
If ctre = 0 Then
LblNbEcr.Text = ""
ElseIf ctre = 1 Then
LblNbEcr.Text = ctre & " examen écrit choisit sur 4."
Else
LblNbEcr.Text = ctre & " examens écrits choisit sur 4."
End If
End Sub
Private Sub SecureOralMAX3(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox13.CheckedChanged, CheckBox14.CheckedChanged, CheckBox15.CheckedChanged, CheckBox16.CheckedChanged, CheckBox17.CheckedChanged, CheckBox18.CheckedChanged, CheckBox19.CheckedChanged, CheckBox20.CheckedChanged, CheckBox21.CheckedChanged
If sender.checkstate = CheckState.Checked Then
ctro += 1
If ctro > 3 Then
MsgBox("Vous ne pouvez pas choisir plus de 3 examens oraux.", MsgBoxStyle.Exclamation, "Erreur")
sender.checkstate = CheckState.Unchecked
End If
Else
ctro -= 1
End If
DeclencheurDeFacultatif()
If ctro = 0 Then
LblNbOral.Text = ""
ElseIf ctro = 1 Then
LblNbOral.Text = ctro & " examen oral choisit sur 3."
Else
LblNbOral.Text = ctro & " examens oraux choisit sur 3."
End If
End Sub
Private Sub ChageAllemand(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox12.CheckedChanged, CheckBox21.CheckedChanged
CheckBox21.Enabled = Not CheckBox12.Checked REM Active/Désactive la ChB de l'oral en fonction de l'état de la ChB de l'écrit.
CheckBox12.Enabled = Not CheckBox21.Checked REM Idem mais en fonction de l'oral
End Sub
Private Sub ChangeAnglais(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox11.CheckedChanged, CheckBox20.CheckedChanged
CheckBox20.Enabled = Not CheckBox11.Checked REM Active/Désactive la ChB de l'oral en fonction de l'état de la ChB de l'écrit.
CheckBox11.Enabled = Not CheckBox20.Checked REM Idem mais en fonction de l'oral
End Sub
Private Sub ChangeAstronomie(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox10.CheckedChanged, CheckBox19.CheckedChanged
CheckBox19.Enabled = Not CheckBox10.Checked REM Active/Désactive la ChB de l'oral en fonction de l'état de la ChB de l'écrit.
CheckBox10.Enabled = Not CheckBox19.Checked REM Idem mais en fonction de l'oral
End Sub
Private Sub ChangeEspagnole(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox8.CheckedChanged, CheckBox18.CheckedChanged
CheckBox18.Enabled = Not CheckBox8.Checked REM Active/Désactive la ChB de l'oral en fonction de l'état de la ChB de l'écrit.
CheckBox8.Enabled = Not CheckBox18.Checked REM Idem mais en fonction de l'oral
End Sub
Private Sub ChangeHistoire(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox4.CheckedChanged, CheckBox17.CheckedChanged
CheckBox17.Enabled = Not CheckBox4.Checked REM Active/Désactive la ChB de l'oral en fonction de l'état de la ChB de l'écrit.
CheckBox4.Enabled = Not CheckBox17.Checked REM Idem mais en fonction de l'oral
End Sub
Private Sub ChangeRusse(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged, CheckBox16.CheckedChanged
CheckBox16.Enabled = Not CheckBox1.Checked REM Active/Désactive la ChB de l'oral en fonction de l'état de la ChB de l'écrit.
CheckBox1.Enabled = Not CheckBox16.Checked REM Idem mais en fonction de l'oral
End Sub
Private Sub DeclencheurDeFacultatif()
If ctre + ctro = 7 Then REM Affiche les facultatifs après avoir coché tout les examens obligatoire
PnlFac.Visible = True
Else REM Cache tout.
PnlFac.Visible = False
End If
End Sub
End Class