Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

UTILISATION DE L'API SENDMESSAGE AVEC UNE LISTBOX OU UN COMBOBOX


Information sur la source

Catégorie :API Classé sous : sendmessage, listbox, combobox, api Niveau : Débutant Date de création : 08/10/2004 Date de mise à jour : 11/09/2006 18:55:20 Vu / téléchargé: 20 864 / 2 963

Note :
5,5 / 10 - par 2 personnes
5,50 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (17)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
Voici une liste d'exemples de l'API SendMessage dans le cadre d'une utilisation avec une ListBox ou un ComboBox.

J'ai découvert ces exemples sur le site "htt://www.vb-helper.com" et je me dis qu'ils pourraient bien en intéresser quelques uns d'entre vous.  Les exemples sont copiés tels quels et je n'ai pas pris le temps de traduire les commentaires en anglais déjà placés.

Quels sont ces exemples :

1) A la manière d'Accès, mise en colonnes des items d'une listbox sans passer par une police spéciale (mon préféré, cfr la capture) ;
2) Alignement à l'extrème droite des éléments d'une listbox ;
3) Alignement à droite d'items tels que des valeurs numériques ;
4) Mise des éléments d'un combobox sous forme de liste à colonnes et affiche une des colonnes lors de la sélection de l'élément ;
5) Saisie semie-automatique dans un combobox mais n'autorisant que la saisie des mots présents dans la liste ;
6) Sélection dans un combobox un élément en fonction de la frappe dans une zone de texte ;
7) Ajout à un combobox ou une listbox d'une liste de fichiers, répertoires ou lecteurs ;
8) Affichage du chemin des répertoires spéciaux de l'ordinateur ;
9) Afficher plus de 8 items lorsqu'on déroule un combobox ;
10) Modifier la largeur de la liste déroulée d'un combobox ;
11) Sélectionner ou déselectionner tous les éléments d'une listbox de type checkbox en une ligne de code ;
12) Récupérer l'élément sélectionné par un click droit dans une listbox ;
13) Modifier le menu contextuel d'un combobox pour ne permettre que la copie du texte et empêcher d'y coller une autre valeur (dans le cadre d'un copier-coller) ;
14) Ajouter une barre de défilement horizontal à une listbox ;
15) Augmenter la taille de la barre de défilement horizontal d'une listbox si la longueur de texte des éléments ajoutés est plus long que certains éléments.



 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

08 octobre 2004 21:20:30 :
-
11 septembre 2006 18:55:20 :
Mise à jour avec intégration de la suggestion de Cacophrene pour éviter l'erreur de type Overflow relevée par MaddM@tt.

Commentaires et avis

signaler à un administrateur
Commentaire de MadM@tt le 08/10/2004 22:14:13

C'est super cool, 20 sources en 1, sympa !
Par contre j'ai un bug pour la fenêtre 11, ça me met "hors de l'index" (si j'ai bonne mémoire)

signaler à un administrateur
Commentaire de PROGRAMMIX le 08/10/2004 22:31:13

Et sur quelle ligne, VB butte-t-il lorsque tu passes en mode "débogage" ?

signaler à un administrateur
Commentaire de MadM@tt le 08/10/2004 22:32:38

je vais rééssayer 2s

signaler à un administrateur
Commentaire de MadM@tt le 08/10/2004 22:35:09

Voilà c'est dans la fenêtre 6, ça me met "Overflow"
ligne :
l = SendMessage(Combo1.hwnd, CB_FINDSTRING, 0, ByVal s)

signaler à un administrateur
Commentaire de PROGRAMMIX le 08/10/2004 22:42:19

Aïe...

Est-ce que ça donne la même chose lorsque tu tapes quelques choses dans la combobox ?  Hélas, je ne vois pas trop ce que ça peut être...

J'ai d'ailleurs oublié de dire que la form6 permet d'ajouter un élément à la liste si le texte validé dans le combobox n'est pas repris dans la liste.

signaler à un administrateur
Commentaire de MadM@tt le 08/10/2004 22:46:08

ça ne change rien si je tape dans la combobox, ça ne fait rien.
Mais ça plante dès que je tape quoi que ce soit dans la textbox...

signaler à un administrateur
Commentaire de FeelCode le 09/10/2004 00:25:50

Hello
Sa peux servire :)

signaler à un administrateur
Commentaire de Dragonmaster le 09/10/2004 19:10:50

Ya pas de zip'

signaler à un administrateur
Commentaire de MadM@tt le 09/10/2004 20:38:45

Moi je le vois bien le zip pourtant

signaler à un administrateur
Commentaire de PROGRAMMIX le 10/10/2004 10:48:29

>>>> Dragonmaster:
Le ZIP est présent et fonctionne, je l'ai re-testé ce matin !

>>>> MadM@tt:
Désolé, mais je ne vois pas encore d'où vient le problème avec la form6...  et le fait que ça bug, m'ennuie autant que toi...

signaler à un administrateur
Commentaire de tiptop9 le 10/10/2004 13:18:24

bjr à tous,

je cherche comment créer un menu deroulant, du style
affichage puis barre d'outils puis selectionner par standard ou mise en forme ou drawing etc

ci-joint une partie de mon code + mon @
st.feuillien@skynet.be

With ActiveMenuBar.Menus.Add("SAPHR- SAP FI")

Set mi = .MenuItems.Add("TRAITEMENT SAP HR", "lecture_txt")
Set mi = .MenuItems.Add("REGROUPEMENT DES COMPTES SAP HR", "total_par_compte_identique")
End With

MERCI

tiptop

signaler à un administrateur
Commentaire de PROGRAMMIX le 10/10/2004 20:50:01

>>> tiptop9
Comme ça, ça ne me dit rien...

As-tu au moins fait une recherche sur le site ?

En tapant "menu déroulant", il y a moyen d'en trouver quelques unes.
Une adresse au hasard : http://www.vbfrance.com/code.aspx?ID=3755 "UN BEAU MENU DÉROULANT GRAPHIQUE STYLE INTERNET".

Si cela ne convient pas, tu devrais avoir plus de chance en mettant ta question sur le forum plutôt qu'en commentaires de sources (surtout quand le thème de la question n'est pas en rapport avec le thème de la source).

signaler à un administrateur
Commentaire de salazar le 18/10/2004 19:39:54

Très interessant !

Sais tu supprimer la scrollbar verticale de la listbox par API, car je souhaite utiliser une que j'ai développé.

Merci.
Eric

signaler à un administrateur
Commentaire de PROGRAMMIX le 18/10/2004 20:20:53

>>> salazar
Hélas, ça ne me dis rien non plus...
Faudrait que je pousse plus loin les investigations...

signaler à un administrateur
Commentaire de salazar le 19/10/2004 12:11:32

Merci,

J'ai la réponse :

Private Declare Function ShowScrollBar Lib "user32" (ByVal hwnd As Long, ByVal wBar As Long, ByVal bShow As Long) As Long

Private Const SB_HORZ = 0
Private Const SB_VERT = 1
Private Const SB_BOTH = 3

ShowScrollBar List1.hwnd, SB_VERT, False

Ca fonctionne bien en statique mais pas en dynamique. Alors j'ai mis la fonction dans un timer à 1, mais on arriva à les voir cintiller...
Alors je vais creer un userform ListBox. L'astuce sera de faire le userform mois large que la ListBox contenant un scroll verticale...
La gestion des méthodes (add, remove...) sera faite par API, car c'est très rapide et simple.

A+


signaler à un administrateur
Commentaire de SR2 le 12/01/2005 23:35:28

Je voudrais savoir si qq pourrais adapter ce code à VBA
merci....

Private Declare Function ShowScrollBar Lib "user32" (ByVal hwnd As Long, ByVal wBar As Long, ByVal bShow As Long) As Long

Private Const SB_HORZ = 0
Private Const SB_VERT = 1
Private Const SB_BOTH = 3

ShowScrollBar List1.hwnd, SB_VERT, False

signaler à un administrateur
Commentaire de Cacophrene le 11/09/2006 15:44:42

Salut !

Pour l'erreur Overflow relevée ci-dessus par MaddM@tt... il suffit d'aller en haut de la page et de remplacer les "As Integer" de la déclaration de SendMessage par "As Long".

Cordialement,
Cacophrène

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Enregistrer plusieurs combobox + textbox + listbox [ par Kheops ] Bonjour a tous ,ben tout est dans le titre :=)Comment faire pour enregistrer dans un fichier .dat (par ex) une dizaine de textbox , deux-trois combobo utilisation de l'API SendMessage avec LB_SETHORIZONTALEXTENT et LB_SETVERTICALEXTENT [ par seedorf ] Qq1 connait comment on utilise l'api SendMessage avec les parametres LB_SETHORIZONTALEXTENT et LB_SETVERTICALEXTENT pour ENLEVE les barre de défilleme ComboBox et ListBox [ par pierreII ] Bonjour,J'aimerais réaliser un petit programme, qui me permette d'afficher des éléments dans une ListBox lorsque je sélectionne un élément de ma Combo SendMessage et ListBox [ par MrDogbert ] SalutY a t il un moyen d'utiliser la fonction :Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg recuperer un sendmessage [ par cirrus ] j'utilise l' API sendMessage pour communiquez avec pas mal d'application mais je n'est trouvé aucune information sur la manière ou l' API à utiliser p insertion des lignes d'un fichier texte dans une comboBox ou une listBox [ par kvalou ] Bonjour,Voila j'ai un fichier texte qui est sous cette forme:admindirectioinformatinfodocinfores............................et j'aimerai importer chaq L'api : SendMessage - WM_CLOSE ne ferme pas IE ! [ par magicyoda ] ca menerve ! cette fonction ne ferme pas IE !jai trouve sur le site une api : destroywindow mais elle marchait avec aucun programme !je voudrais bien Récupération d'un .txt dans un comboBox [ par kulls ] bonjour,j'espère qu'une bonne ame pourras m'aiderj'aimerais pouvoir avoir dans un listbox, le contenu d'un fichier texte. je m'expliquej'aimerais affi sendmessage + SBlist [ par anorec ] J'ai remplace une listbox par un controle SBlist (Listbox ameliore OCX dispo sur le site) seulement la fonction de selection rapide du ListIndex par l ListBox : rechercher un mot par API [ par salazar ] J'ai une ListBox qui contient des titres de films à chaque item. Je souhaite fait une recherche par mot clé et afficher les résultats d


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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
Temps d'éxécution de la page : 0,359 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.