Lecture repérage d'informations anticipation (trous) mémoire compréhension (qcm)

Description

Ajout d'exercices à trous/ closure aux exercices de repérage d'infos et QCM.
Après avoir créé divers exercices de repérage d'infos listés dans "documents lecture.rtf" [voirà l'intérieur du zip.(Quelques-uns n'ont pas de QCM associé)],
j'ai ajouté divers exercices à trous pour anticipation ou mémoire selon le mode d'utilisation:
closure -peu dense- (2 choix: disparition de 20 ou 30 mots); caches créés à partir d'une liste avec définition/indice associé; caches avec 4 propositions de choix pour chaque élément ; disparition des prépositions (ou homographes) ou des déterminants et pronoms(ou homographes)
En les observant, vous pourrez créer facilement vous-mêmes vos propres exercices de recherche d'infos et des QCM simples (-1=inexact /1=exact)
(Observez particulièrement "testclepsydresouille": "testclepsydresouille.txt" pour repérage d'infos ; "testclepsydresouilleq.txt" pour le QCM;
"testclepsydresouilletr.txt" pour les trous avec indices et "testclepsydresouillech.txt" pour les trous avec 4 propositions (la première est la bonne)
(J'ai mis en capture deux exos à trous; pour les autres exos: repérage d'infos, QCM , voyez en lançant les programmes du zip)
"documents lecture.doc" ou "documents lecture.rtf" listent les divers textes et exercices et donnent des informations complémentaires

Les systèmes de saisie des info dans un doc.rtf sont dans le dossier joint "saisiertf"
Un des systèmes de saisie des info dans un doc.rtf est détaillé dans le code listé ci-dessous: du bricolage certes, mais je le trouve souple et pratique.

Remarques:
Pour tester la partie "utilisation par l'enfant", on peut lancer le programme utilisateur:"lerinfo2.exo" (à modifier en "lerinfo2.exe") à condition d'avoir dans windows\system32 (et syswow64 de W7) les .dll, etc

nécessaires à VB6 (plus celles qui sont particulières à richtextbox et à la boîte de dialogue ouvrir fichier: richtx32.ocx et autres ,"RCHTXFR.DLL" , "RICHED32.DLL" par-exemple; COMDLG32.OCX; MSCOMCTL.OCX et MCI32.ocx, etc...)
les doc.rtf (créés avec wordpad) sont codés doc.rtl (afin qu'eux seuls apparaissent dans la boîte de choix) ; on peut les lire avec wordpad ou word;

...Et je vais encore me faire tirer l'oreille par les vbsixtes pour mon bricolage maison qui respecte mal les règles de codage (mais ils comprendront que je me suis plutôt attaché à faire davantage de textes de lecture qu'à peaufiner le code - Merci à eux.)

Source / Exemple :


'Je laisse ce qu'il y avait:
'      *************************************************************************
'      *     Saisie de mots ou expressions (avec leur emplacement)sur doc.rtf  *
'      *************************************************************************
'DEBUT:On ouvre à côté un fichier.txt et on lance le programme de saisie;
' on choisit le doc.rtf à traiter (après relecture: pas de modif possible ensuite)
'   1-Sélectionner l'élément voulu sur la richtextbox (faire glisser la souris, bouton gauche appuyé)
'       *** Si on commet une erreur, il suffit de sélectionner autre chose
'   ==>(la plage sélectionnée , sa position,son nb de caractères sont automatiquement placée sur le presse-papiers)
'*On passe directement sur le fichier.txt (surtout pas de [ctrl-C]!
'   2-cliquer à l'endroit désiré sur le fichier-txt (un saut de ligne est intégré à l'info mémorisée dans le presse-papiers)
'   3-faire [ctrl-V] pour placer le contenu du presse-papiers sur le fichier-txt
'FIN:on ferme le programme de saisie [croix rouge haut droit];
'On sauvegarde le fichier.txt dans le même dossier avec le même radical que le doc.rtf
' ... et on fait les aménagements nécessaires pour que le fichier-txt serve de fichier de données,
'                                               selon le logiciel d'utilisation créé.

' contrôles:1 bouton commande ("Cmdchargrtf")
'           1 richtextbox 'richtx32.ocx et autres .dll nécessaires dans system32 (et syswow64 pour W7)
'           1 common control dialog pour choisir doc.rtf et charger
'           1 label pour voir ce qu'on fait
' ================== C'est avec cela que j'ai pointé toutes les données des exos de lecture =================================

'--------------------------------------------------------------------------------------------------------------------------------------
'[J'ai joint l'exe à tout hasard, mais avec le code on bidouille selon les besoins ("saisiaoidrtf.exo" à modifier en "saisiaoidrtf.exe")]
' J'avais essayé avec "shell" et "sendkeys" , mais il ne fait pas toujours le facteur et j'ai eu les gros yeux de Ucfoutu (que je remercie pour sa rapidité à me répondre),
'alors je fais le facteur à la main par un clic et [ctrl-V], ce qui permet d'ailleurs de gérer avec souplesse la situation.

'J'ai aussi laissé ce que je faisais avant (une richtextbox avec le doc.rtf, et , à côté une textbox où les données s'affichent et où je peux les bidouiller avant de faire "open... for output...")
'                           "saisinfortf.exo" à changer en "saisinfortf.exe"
'en n'écrasant pas cette fois un fichier.txt antérieur ou en cours qui aurait le même nom, mais en additionnant leurs données.
'--------------------------------------------------------------------------------------------------------------------------------------

'*** ces variables sont locales:on peut faire l'économie de les déclarer:
Dim tpl As String 'tpl=mémorise le richtxt.rtf
Dim pl0, pl1 'pl0 =position de départ du txt sélectionné ds le richtext (ou tpl) [RichTextBox1.SelStart]
'pl1=longueur du txt sélectionné ds le richtext (ou tpl) [RichTextBox1.SelLength]
Dim repe As String 'repe= mot ou expression sélectionné

Dim recran 'pour 2 types d'écrans (modifier taille RichTextBox1) (décimal)

Private Sub Cmdchargrtf_Click()
   ' ######### Choix du .rtf à traiter (CHARGER RTF) #########
   Cmdchargrtf.Visible = False
   CommonDialog1.Filter = "Fichiers au format RTF (*.rtf)|*.rtf|(*.rtl)|*.rtl|(*.rtv)|*.rtv|(*.rtp)|*.rtp|(*.rfs)|*.rfs|"
   CommonDialog1.FilterIndex = 1  ' Définit le filtre par défaut(rtf)
  CommonDialog1.ShowOpen
'If Right(CommonDialog1.FileName, 3) = "rtf" Or Right(CommonDialog1.FileName, 3) = "RTF" Then
    RichTextBox1.LoadFile CommonDialog1.FileName, rtfRTF
    RichTextBox1.Locked = True 'impossible de modifier le doc.rtf
'End If
End Sub
Private Sub Form_Load()
tpl = ""
lecran = Int(Screen.Width / Screen.TwipsPerPixelX): hecran = Int(Screen.Height / Screen.TwipsPerPixelY)
recran = 1: If lecran < 1800 Then recran = 0.9: If hecran < 700 Then recran = 0.8
'If lecran < 900 Then recran = 0.6
If recran < 1 Then Form1.Width = 10600: RichTextBox1.Width = 10000 Else Form1.Width = 16600: RichTextBox1.Width = 16000 'agrandir la RichTextBox1 si grand écran
RichTextBox1.Text = "Chargez d'abord un document.rtf"
End Sub
Private Sub RichTextBox1_Click()
Clipboard.Clear 'vider presse-papiers
tpl = RichTextBox1.Text: pl0 = RichTextBox1.SelStart: If pl0 > 0 And pl0 <= Len(tpl) Then Label1 = ":   curseur:" & Str(pl0) & " =>" & Mid(tpl, pl0, 1)
pl1 = RichTextBox1.SelLength
repe = Mid(tpl, pl0 + 1, pl1): Label1 = Str(pl0) & "," & repe & "," & Str(pl1)
Clipboard.SetText Trim(Str(pl0)) & "," & Chr(34) & repe & Chr(34) & "," & Trim(Str(pl1)) & "," & Chr(34) & Chr(34) & ","      ' Place le texte sur presse-papiers

End Sub

Conclusion :


Si ça peut servir...
Et s'il y a des problèmes, pour composer des exos particulièrement,==> commentaire
Merci.
Et bonne rentrée à toutes/tous.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.