DirListBox qui ne sélectionne plus les dossiers recherchés au clavier

nono78220 Messages postés 181 Date d'inscription dimanche 3 décembre 2006 Statut Membre Dernière intervention 28 octobre 2010 - 22 févr. 2010 à 18:01
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 - 22 févr. 2010 à 22:18
Bonjour,

Jusqu'à présent tout fonctionnait parfaitement. Dans une DirListBox apparait une liste de dossiers. En tapant le nom du dossier, celui-ci était surligné. Pratique car je n'étais pas obligé de rechercher ce dossier par la barre de défilement.

Brutalement tout ne fonctionne plus. Mes dossiers sont listés mais lorsque je tape une lettre, aucun dossier n'est sélectionné et au contraire une autre procédure est lancée. Pire, normalement cette dirListBox est ouverte via un menu et le raccourci "ctrl O", eh bien idem une autre procédure est lancée !!!

Auriez-vous une explication à tout cela ?

Merci d'avance

4 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 230
22 févr. 2010 à 18:24
Bonjour,
en "tapant" dans quel contrôle ?
Peut-on voir ce code ? (celui correspondant à tes "frappes")
____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 230
22 févr. 2010 à 18:37
et :

Pire, normalement cette dirListBox est ouverte via un menu et le raccourci "ctrl O", eh bien idem une autre procédure est lancée !!! 


Idem ! où et quel est le code définissant l'action de "ctrl O" ?
____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
0
nono78220 Messages postés 181 Date d'inscription dimanche 3 décembre 2006 Statut Membre Dernière intervention 28 octobre 2010
22 févr. 2010 à 22:05
Bonsoir,

[b]Lorque l'on recherche un dossier dans Dir1, la procédure Dir1_keyup est déclenchée :
/b

Private Sub Dir1_KeyUp(KeyCode As Integer, Shift As Integer)
On Error GoTo gestion

If KeyCode = 32 Then 'si touche back space on selectionne le nom'
Dir1.Path = Dir1.List(Dir1.ListIndex)
Else
Exit Sub
'--> vient d'être rajouté pour corriger le bug
End If

If KeyCode = 32 Then 'on extrait le nom 'code donné grâce à jmf marques du site
Dim nono As Integer
nomrep = Dir1.Path
While InStr(nomrep, "") > 0
nomrep = Mid(nomrep, InStr(nomrep, "") + 1)
Wend
'msgbox nomrep
nono = MsgBox(nomrep, vbYesNo + vbQuestion, "Patient sélectionné : ") 'affichage du dossier choisi
If nono = 6 Then
SauvegardePatient = nomrep 'ça y est, le nom est extrait
End If

A partir du menu, on ouvre la form frmOuvrirDossier qui contient la dirlistbox "Dir1" affichant la liste des dossiers :

Private Sub mnuFichierOuvrir_Click() 'associé à ctrl O

'mnulistepatho.Visible = False

Const conBtns As Integer = vbYesNoCancel + vbExclamation + vbDefaultButton1 + vbApplicationModal
Const conMsg As String = "QUITTER le dossier patient ?"
Dim intReponseUtil As Integer

Dim intReponseUtil2 As Integer

If blnModif = True Then 'document modifié depuis le dernier enregistrement
intReponseUtil2 = MsgBox("Enregistrer le dossier patient ?", vbYesNo + vbExclamation + vbDefaultButton1 + vbApplicationModal, "DocFiles - Enregistrement observation")

Select Case intReponseUtil2
Case vbYes 'l'utilisateur veut enregistrer le document actuel
EnregistrementRTBoxAccueil
'If blnAnnEnr = True Then 'l'utilisateur a annulé l'enregistrement
' Cancel = 1 'renvoyer au document sans decharger le document
'End If
Case vbNo
blnModif = False
'utilisateur ne veut pas enregistrer le document actuel
'décharger la feuille et quitter
End Select
End If
On Error GoTo gesterrouvrir
If SauvegardePatient = "" Then

today = Date
'frmAccueil.Show
'DisparitionControleFeuille
frmOuvrirDossier.Dir1.Path = frmOuvrirDossier.Drive1.Drive
frmOuvrirDossier.Dir1.Path = "c:\DocFiles SAVE\DOSSIERS PATIENTS"
frmOuvrirDossier.Show
Else
etc.....

Bug incompréhensible car tout fonctionnait royalement jusqu'à présent !!!
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 230
22 févr. 2010 à 22:18
1) jmf a bon dos (et d'abord : kicécuila ? )
2) to n évènement Keyup ne peut intervenir que si ton contrôle a le focus
3) et pourquoi ce On Error goto gestion ? pour "taire" quoi ? (et où est ton étiquette gestion ?)
4) 32 n'est pas le keycode du backspace mais de l'espace !
5)
Private Sub mnuFichierOuvrir_Click() 'associé à ctrl O

Associé par quoi et comment ?
Tout cela est peu compréhensible en l'état ..
____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
0