begin process at 2012 02 12 04:23:54
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Message Box

 > INDEXER LE TEXTE D'UN LISTBOX (POUR UNE FAQ PAR EXEMPLE)

INDEXER LE TEXTE D'UN LISTBOX (POUR UNE FAQ PAR EXEMPLE)


 Information sur la source

Note :
1 / 10 - par 1 personne
1,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Message Box Classé sous :faq, listbox, indexation, repères, marqueurs Niveau :Débutant Date de création :02/07/2006 Date de mise à jour :05/07/2006 15:17:51 Vu / téléchargé :6 804 / 435

Auteur : JLB59

Ecrire un message privé
Site perso
Commentaire sur cette source (1)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Utile pour les petites FAQ.
Dans le Form_Load, on enregistre les questions et réponses.
Lors de l'exécution, les questions sont inscrites dans le ListBox et quand l'on en sélectionne une, la réponse est automatiquement inscrite dans un label.

J'ai essayé de mettre les commentaires adéquates sur différentes procédures, j'espèque que cela sera suffisant.

Source

  • ' API pour le scroll horizontal
  • Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
  • Private Const LB_SETHORIZONTALEXTENT = &H194
  • ' Dimensionne deux tableaux. Modifier la valeur du "To" suivant le nombre de questions
  • Dim Q(0 To 7)
  • Dim R(0 To 7)
  • Dim i As Integer
  • Private Sub Form_Load()
  • Me.ScaleMode = vbPixels
  • ' Questions textes dans le List1 (Tableau 1)
  • Q(0) = "Q1 - En combien de temps peut-on faire le test ?"
  • Q(1) = "Q2 - Pourquoi les tests sont parfois difficiles ?"
  • Q(2) = "Q3 - Si le test est terminé avant le temps imparti, a t-on des points en plus ?"
  • Q(3) = "Q4 - ..."
  • Q(4) = "Q5 - ..."
  • Q(5) = "Q6 - ..."
  • Q(6) = "Q7 - ..."
  • Q(7) = "Q8 - ..."
  • ' Réponses textes dans le Label1 (Tableau 2)
  • R(0) = "R1 - Tout dépend de la rapidité de la personne testée."
  • R(1) = "R2 - Certains tests peuvent sembler difficile, mais quand on a la réponse " & _
  • "on se dit «Bon sang mais c'est bien-sûr !» "
  • R(2) = "R3 - Non car il ne s'agit que de tests personnels et non de groupe"
  • R(3) = "R4 - ..."
  • R(4) = "R5 - ..."
  • R(5) = "R6 - ..."
  • R(6) = "R7 - ..."
  • R(7) = "R8 -"
  • For i = 0 To 7 'Ajoute le contenu du ListBox
  • List1.AddItem Q(i)
  • Next i
  • List1.ListIndex = 0 ' Affiche le premier élément du ListBox (0=Q1 1=Q2 2=Q3....)
  • 'Calculer la largeur des items et créer une barre de défilement horizontale si nécessaire
  • Call BarreDeDéfilement(Me.List1)
  • End Sub
  • Private Sub List1_Click()
  • ' Affichage de la réponse texte (tableau 2) dans le Label
  • Label1.Caption = R(List1.ListIndex)
  • End Sub
  • Private Sub BarreDeDéfilement(lstBox As ListBox)
  • Dim i As Integer
  • Dim Largeur As Integer
  • Largeur = 1
  • 'Parcourt la liste et mesure la largeur des éléments et conserve la taille la plus large
  • For i = 0 To lstBox.ListCount - 1
  • If TextWidth(lstBox.List(i)) > Largeur Then Largeur = TextWidth(lstBox.List(i))
  • Next i
  • 'Affiche une barre de défilement horizontale
  • SendMessage lstBox.hwnd, LB_SETHORIZONTALEXTENT, Largeur + 5, 0
  • End Sub
  • Private Sub CmdQuitter_Click()
  • End
  • End Sub
' API pour le scroll horizontal
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long

Private Const LB_SETHORIZONTALEXTENT = &H194

' Dimensionne deux tableaux. Modifier la valeur du "To" suivant le nombre de questions
Dim Q(0 To 7)
Dim R(0 To 7)

Dim i As Integer

Private Sub Form_Load()
    Me.ScaleMode = vbPixels
    
    ' Questions textes dans le List1 (Tableau 1)
    Q(0) = "Q1 - En combien de temps peut-on faire le test ?"
    Q(1) = "Q2 - Pourquoi les tests sont parfois difficiles ?"
    Q(2) = "Q3 - Si le test est terminé avant le temps imparti, a t-on des points en plus ?"
    Q(3) = "Q4 - ..."
    Q(4) = "Q5 - ..."
    Q(5) = "Q6 - ..."
    Q(6) = "Q7 - ..."
    Q(7) = "Q8 - ..."
    
    ' Réponses textes dans le Label1 (Tableau 2)
    R(0) = "R1 - Tout dépend de la rapidité de la personne testée."
    R(1) = "R2 - Certains tests peuvent sembler difficile, mais quand on a la réponse " & _
              "on se dit «Bon sang mais c'est bien-sûr !» "
    R(2) = "R3 - Non car il ne s'agit que de tests personnels et non de groupe"
    R(3) = "R4 - ..."
    R(4) = "R5 - ..."
    R(5) = "R6 - ..."
    R(6) = "R7 - ..."
    R(7) = "R8 -"
        
    For i = 0 To 7   'Ajoute le contenu du ListBox
        List1.AddItem Q(i)
    Next i

List1.ListIndex = 0    ' Affiche le premier élément du ListBox (0=Q1  1=Q2   2=Q3....)
    
    'Calculer la largeur des items et créer une barre de défilement horizontale si nécessaire
    Call BarreDeDéfilement(Me.List1)

End Sub

Private Sub List1_Click()
    ' Affichage de la réponse texte (tableau 2) dans le Label
    Label1.Caption = R(List1.ListIndex)
End Sub

Private Sub BarreDeDéfilement(lstBox As ListBox)
    Dim i As Integer
    Dim Largeur As Integer
    
    Largeur = 1
    
    'Parcourt la liste et mesure la largeur des éléments et conserve la taille la plus large
    For i = 0 To lstBox.ListCount - 1
        If TextWidth(lstBox.List(i)) > Largeur Then Largeur = TextWidth(lstBox.List(i))
    Next i
    
    'Affiche une barre de défilement horizontale
    SendMessage lstBox.hwnd, LB_SETHORIZONTALEXTENT, Largeur + 5, 0
End Sub


Private Sub CmdQuitter_Click()
End
End Sub


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

03 juillet 2006 07:27:12 :
Ce projet est très simple et si vous avez des trucs et astuces pour l'améliorer, je serais très heureux que vous m'en teniez informer, ce serait très sympa de me faire partager votre savoir.
05 juillet 2006 15:17:51 :
Je n'ai pas trouvé de Bug proprement dit, sauf peut-être pour le scroll horizontal où le texte ne s'affiche pas en totalité ! Ca coupe un peu avant, mais bon, c'est pas mon projet non plus !

 Sources du même auteur

Source avec Zip Source avec une capture AUTRE PETITE FAQ
Source avec Zip Source avec une capture DÉSACTIVE LES OPTIONS DE LA CASE SYSTEM
Source avec Zip Source avec une capture PROGRESSBAR
Source avec Zip Source avec une capture TEMPSECOULE (TIMEPROGRESS)
INDEXATION D'UNE BASE DE DONNÉES

 Sources de la même categorie

Source avec Zip Source .NET (Dotnet) LOGICIEL DE MÉMO (POST-IT) par VBmasterX
Source avec Zip MESSAGE AUTO (MSG_AUTO) par omega8
Source avec Zip Source avec une capture MSG GENERATOR V 1.0 par ThePH267
Source avec Zip Source avec une capture [VB6] TOUT SAVOIR SUR LA POSITION ET LES DIMENTIONS DE LA BA... par lermite222
Source avec Zip Source avec une capture Source .NET (Dotnet) MESSAGE BOX A CHOIX MULTIPLE par mafieulemouton

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture PLANCHE CONTACT SOUS WORD par Le Pivert
Source avec Zip Source .NET (Dotnet) L'ÉVÉNEMENT SCROLL D'UNE LISTBOX DANS VB.NET par 310
Source avec Zip Source avec une capture Source .NET (Dotnet) SHELLVIEW EN VB.NET par Le Pivert
Source avec Zip Source avec une capture GESTIONNAIRE ASSISTANT PROJET VBP BAS par Galactus13
Source avec Zip Source avec une capture AUTRE PETITE FAQ par JLB59

Commentaires et avis

Commentaire de zonebleue le 28/02/2007 11:50:01

Franchement, c'est bof...

je, connais des méthodes beaucoup plus simles que celle la.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

tri de listbox [ par Oups ] qu'elle et la methode de trie la plus approprié dans d'une listbox qui charge des enregistrements ayant un chiffre devant chaque lignes ? quand je cha Listbox [ par bux ] Je charge dans une listbox 20 nombres dans un ordre croissant. Je voudrais que lorsque je clique sur un bouton cela me range les nombres dans un ordre ListBox: Urgent!!! [ par flo ] Dans ma liste box, la fin des champs trop longs n'est pas visible. Peut on , en rentrant les differents items, les rentrer sur 2 lignes?Merci ( ma que Listbox Listview Limitation [ par jmc ] Je dois rentrer 400 000 mots dans une liste (Box ou View).- Le chargement mot à mot lors de l'exécution est extrêmement lent dans la listbox comme dan ListBox & Item [ par Neurolog ] Comment recupere t-on la valeure de l'item que l'on séléctionne dans une ListBox ?Merci comment mettre un fichier TXT dans une "listbox" [ par sebas ] Je voudrait pouvoir lire dans ma list box le contenu d'un fichier txtmerci d'avence =:-) ListBox [ par Cyber Bug ] J'aimerais savoir comment on peut faire pour ke le premier item d'une ListBox soit selectionné automatiquement lors du chargement d'une Form.C'est ass Comment determiner le dernier item d'une ListBox?? [ par Cyber Bug ] Comment fait on pour determiner le dernier item d'une ListBox si on ne sait pas combien i va avoir d'items dans la listeMerci d'avance(C'est assey URG SOS listBox [ par doudou ] Bonjour,Mon problème est le suivant:Je souhaiterais faire apparaître une zone de liste dans une dia sous powerpoint(cette application doit me permettr


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 7,706 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales