pour des raisons essentiellement esthétiques et de place, je souhaiterais
dans une form disposer d'un contrôle qui ressemble à un combobox, mais où la
saisie de texte serait impossible ...
en fait, tout serait impossible en dehors du choix de l'un des éléments de
la liste ...
j'ai essayé de jouer avec les propriétés Enabled et Locked, et bien entendu
ça ne fonctionne pas ...
par ailleurs, utiliser un listbox ne me convient pas vraiment ...
que puis je faire ?
merci d'avance de vos réponses
--
Attention ! Adresse mail invalide ...
Pour me contacter, cliquez sur le lien ci-dessous:
http://scraper.chez.tiscali.fr/contact.htm
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Patrick Philippot
Bonjour,
scraper wrote:
pour des raisons essentiellement esthétiques et de place, je souhaiterais dans une form disposer d'un contrôle qui ressemble à un combobox, mais où la saisie de texte serait impossible ... en fait, tout serait impossible en dehors du choix de l'un des éléments de la liste ... que puis je faire ?
Donner le style 2 - DropdownList à votre combobox.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
Bonjour,
scraper wrote:
pour des raisons essentiellement esthétiques et de place, je
souhaiterais dans une form disposer d'un contrôle qui ressemble à un
combobox, mais où la saisie de texte serait impossible ...
en fait, tout serait impossible en dehors du choix de l'un des
éléments de la liste ...
que puis je faire ?
Donner le style 2 - DropdownList à votre combobox.
--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
pour des raisons essentiellement esthétiques et de place, je souhaiterais dans une form disposer d'un contrôle qui ressemble à un combobox, mais où la saisie de texte serait impossible ... en fait, tout serait impossible en dehors du choix de l'un des éléments de la liste ... que puis je faire ?
Donner le style 2 - DropdownList à votre combobox.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
Christian HUBERT-HUGOUD- Xtrem7
Il y a une propriété qui permet cela :
Style
Cordialement
Christian Hubert-Hugoud
"scraper" a écrit dans le message de news:
bonjour à tous !
pour des raisons essentiellement esthétiques et de place, je souhaiterais dans une form disposer d'un contrôle qui ressemble à un combobox, mais où
la
saisie de texte serait impossible ... en fait, tout serait impossible en dehors du choix de l'un des éléments de la liste ...
j'ai essayé de jouer avec les propriétés Enabled et Locked, et bien
entendu
ça ne fonctionne pas ...
par ailleurs, utiliser un listbox ne me convient pas vraiment ...
que puis je faire ?
merci d'avance de vos réponses
--
Attention ! Adresse mail invalide ... Pour me contacter, cliquez sur le lien ci-dessous: http://scraper.chez.tiscali.fr/contact.htm
scraper
Il y a une propriété qui permet cela :
Style
Cordialement
Christian Hubert-Hugoud
"scraper" <scraper@pasdespam.fr> a écrit dans le message de
news:u2LHdrO7EHA.3504@TK2MSFTNGP12.phx.gbl...
bonjour à tous !
pour des raisons essentiellement esthétiques et de place, je souhaiterais
dans une form disposer d'un contrôle qui ressemble à un combobox, mais où
la
saisie de texte serait impossible ...
en fait, tout serait impossible en dehors du choix de l'un des éléments de
la liste ...
j'ai essayé de jouer avec les propriétés Enabled et Locked, et bien
entendu
ça ne fonctionne pas ...
par ailleurs, utiliser un listbox ne me convient pas vraiment ...
que puis je faire ?
merci d'avance de vos réponses
--
Attention ! Adresse mail invalide ...
Pour me contacter, cliquez sur le lien ci-dessous:
http://scraper.chez.tiscali.fr/contact.htm
pour des raisons essentiellement esthétiques et de place, je souhaiterais dans une form disposer d'un contrôle qui ressemble à un combobox, mais où
la
saisie de texte serait impossible ... en fait, tout serait impossible en dehors du choix de l'un des éléments de la liste ...
j'ai essayé de jouer avec les propriétés Enabled et Locked, et bien
entendu
ça ne fonctionne pas ...
par ailleurs, utiliser un listbox ne me convient pas vraiment ...
que puis je faire ?
merci d'avance de vos réponses
--
Attention ! Adresse mail invalide ... Pour me contacter, cliquez sur le lien ci-dessous: http://scraper.chez.tiscali.fr/contact.htm
scraper
scraper
Bonjour Patrick Philippot (dans news:) tu nous disais :
Bonjour,
scraper wrote:
pour des raisons essentiellement esthétiques et de place, je souhaiterais dans une form disposer d'un contrôle qui ressemble à un combobox, mais où la saisie de texte serait impossible ... en fait, tout serait impossible en dehors du choix de l'un des éléments de la liste ... que puis je faire ?
Donner le style 2 - DropdownList à votre combobox.
merci de ta réponse ... j'aurais dû le mentionner, désolé ! mais cela ne me convient pas non plus, car dans ce cas, Combo1.Text passe en lecture seule et j'ai besoin d'y écrire, depuis le code ...
n'y a t il pas une autre solution ?
d'avance merci
--
Attention ! Adresse mail invalide ... Pour me contacter, cliquez sur le lien ci-dessous: http://scraper.chez.tiscali.fr/contact.htm
scraper
Bonjour Patrick Philippot
(dans news:O3dGr6O7EHA.3148@TK2MSFTNGP10.phx.gbl)
tu nous disais :
Bonjour,
scraper wrote:
pour des raisons essentiellement esthétiques et de place, je
souhaiterais dans une form disposer d'un contrôle qui ressemble à un
combobox, mais où la saisie de texte serait impossible ...
en fait, tout serait impossible en dehors du choix de l'un des
éléments de la liste ...
que puis je faire ?
Donner le style 2 - DropdownList à votre combobox.
merci de ta réponse
... j'aurais dû le mentionner, désolé ! mais cela ne me convient pas non
plus, car dans ce cas, Combo1.Text passe en lecture seule et j'ai besoin d'y
écrire, depuis le code ...
n'y a t il pas une autre solution ?
d'avance merci
--
Attention ! Adresse mail invalide ...
Pour me contacter, cliquez sur le lien ci-dessous:
http://scraper.chez.tiscali.fr/contact.htm
Bonjour Patrick Philippot (dans news:) tu nous disais :
Bonjour,
scraper wrote:
pour des raisons essentiellement esthétiques et de place, je souhaiterais dans une form disposer d'un contrôle qui ressemble à un combobox, mais où la saisie de texte serait impossible ... en fait, tout serait impossible en dehors du choix de l'un des éléments de la liste ... que puis je faire ?
Donner le style 2 - DropdownList à votre combobox.
merci de ta réponse ... j'aurais dû le mentionner, désolé ! mais cela ne me convient pas non plus, car dans ce cas, Combo1.Text passe en lecture seule et j'ai besoin d'y écrire, depuis le code ...
n'y a t il pas une autre solution ?
d'avance merci
--
Attention ! Adresse mail invalide ... Pour me contacter, cliquez sur le lien ci-dessous: http://scraper.chez.tiscali.fr/contact.htm
scraper
François Picalausa
Hello,
Tu peux implémenter une recherche dans la liste, ou employer les API qui le feront à ta place, pour retrouver l'élément: Option Explicit 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
'Comment sélectionner "Bla"? 'Soit on connait son index dans la liste : Combo1.ListIndex = 3 Stop
'Soit, par le nom 'Note : -1 signifie qu'on cherche toute la liste ' avec 1, on commencerait à chercher à partir de Test2 'Sélectionne Bla Combo1.ListIndex = SendMessage(Combo1.hwnd, CB_FINDSTRING, -1, ByVal "Bla") Stop
'La casse n'est pas importante 'Sélectionne Bla Combo1.ListIndex = SendMessage(Combo1.hwnd, CB_FINDSTRING, -1, ByVal "BlA") Stop
'Si on ne connait pas le texte complet, on peut chercher sur une partie seulement 'Sélectionne Test1 Combo1.ListIndex = SendMessage(Combo1.hwnd, CB_FINDSTRING, -1, ByVal "test") Stop
'Cela peut être un problème dans certains cas... 'On pourrait tester que l'item a le texte cherché 'ou faire directement une recherche exacte sur le texte 'Sélectionne rien Combo1.ListIndex = SendMessage(Combo1.hwnd, CB_FINDSTRINGEXACT, -1, ByVal "test") Stop
'On peut toujours améliorer cela: 'Ajoute "Test", mais sélectionne "Test2" AddItem2 "Test", Combo1 Stop AddItem2 "Test2", Combo1 Stop End Sub
Private Function AddItem2(Text As String, Combobox As Combobox) As Long AddItem2 = SendMessage(Combobox.hwnd, CB_FINDSTRINGEXACT, -1, ByVal Text)
If AddItem2 = -1 Then Combobox.AddItem Text AddItem2 = Combobox.NewIndex End If
Combobox.ListIndex = AddItem2 End Function
-- François Picalausa
"scraper" a écrit dans le message de news:
Combo1.Text passe en lecture seule et j'ai besoin d'y écrire, depuis le code ...
n'y a t il pas une autre solution ?
Hello,
Tu peux implémenter une recherche dans la liste, ou employer les API qui le
feront à ta place, pour retrouver l'élément:
Option Explicit
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
'Comment sélectionner "Bla"?
'Soit on connait son index dans la liste :
Combo1.ListIndex = 3
Stop
'Soit, par le nom
'Note : -1 signifie qu'on cherche toute la liste
' avec 1, on commencerait à chercher à partir de Test2
'Sélectionne Bla
Combo1.ListIndex = SendMessage(Combo1.hwnd, CB_FINDSTRING, -1, ByVal
"Bla")
Stop
'La casse n'est pas importante
'Sélectionne Bla
Combo1.ListIndex = SendMessage(Combo1.hwnd, CB_FINDSTRING, -1, ByVal
"BlA")
Stop
'Si on ne connait pas le texte complet, on peut chercher sur une partie
seulement
'Sélectionne Test1
Combo1.ListIndex = SendMessage(Combo1.hwnd, CB_FINDSTRING, -1, ByVal
"test")
Stop
'Cela peut être un problème dans certains cas...
'On pourrait tester que l'item a le texte cherché
'ou faire directement une recherche exacte sur le texte
'Sélectionne rien
Combo1.ListIndex = SendMessage(Combo1.hwnd, CB_FINDSTRINGEXACT, -1,
ByVal "test")
Stop
'On peut toujours améliorer cela:
'Ajoute "Test", mais sélectionne "Test2"
AddItem2 "Test", Combo1
Stop
AddItem2 "Test2", Combo1
Stop
End Sub
Private Function AddItem2(Text As String, Combobox As Combobox) As Long
AddItem2 = SendMessage(Combobox.hwnd, CB_FINDSTRINGEXACT, -1, ByVal
Text)
If AddItem2 = -1 Then
Combobox.AddItem Text
AddItem2 = Combobox.NewIndex
End If
Combobox.ListIndex = AddItem2
End Function
--
François Picalausa
"scraper" <scraper@pasdespam.fr> a écrit dans le message de news:
usN6CdQ7EHA.1292@TK2MSFTNGP10.phx.gbl
Combo1.Text passe en lecture seule et j'ai
besoin d'y écrire, depuis le code ...
Tu peux implémenter une recherche dans la liste, ou employer les API qui le feront à ta place, pour retrouver l'élément: Option Explicit 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
'Comment sélectionner "Bla"? 'Soit on connait son index dans la liste : Combo1.ListIndex = 3 Stop
'Soit, par le nom 'Note : -1 signifie qu'on cherche toute la liste ' avec 1, on commencerait à chercher à partir de Test2 'Sélectionne Bla Combo1.ListIndex = SendMessage(Combo1.hwnd, CB_FINDSTRING, -1, ByVal "Bla") Stop
'La casse n'est pas importante 'Sélectionne Bla Combo1.ListIndex = SendMessage(Combo1.hwnd, CB_FINDSTRING, -1, ByVal "BlA") Stop
'Si on ne connait pas le texte complet, on peut chercher sur une partie seulement 'Sélectionne Test1 Combo1.ListIndex = SendMessage(Combo1.hwnd, CB_FINDSTRING, -1, ByVal "test") Stop
'Cela peut être un problème dans certains cas... 'On pourrait tester que l'item a le texte cherché 'ou faire directement une recherche exacte sur le texte 'Sélectionne rien Combo1.ListIndex = SendMessage(Combo1.hwnd, CB_FINDSTRINGEXACT, -1, ByVal "test") Stop
'On peut toujours améliorer cela: 'Ajoute "Test", mais sélectionne "Test2" AddItem2 "Test", Combo1 Stop AddItem2 "Test2", Combo1 Stop End Sub
Private Function AddItem2(Text As String, Combobox As Combobox) As Long AddItem2 = SendMessage(Combobox.hwnd, CB_FINDSTRINGEXACT, -1, ByVal Text)
If AddItem2 = -1 Then Combobox.AddItem Text AddItem2 = Combobox.NewIndex End If
Combobox.ListIndex = AddItem2 End Function
-- François Picalausa
"scraper" a écrit dans le message de news:
Combo1.Text passe en lecture seule et j'ai besoin d'y écrire, depuis le code ...
n'y a t il pas une autre solution ?
Patrick Philippot
scraper wrote:
merci de ta réponse ... j'aurais dû le mentionner, désolé ! mais cela ne me convient pas non plus, car dans ce cas, Combo1.Text passe en lecture seule et j'ai besoin d'y écrire, depuis le code ...
Cela ne change rien. Il suffit de suppprimer l'élément à changer, d'ajouter un élément avec le nouveau texte et de le sélectionner.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
scraper wrote:
merci de ta réponse
... j'aurais dû le mentionner, désolé ! mais cela ne me convient pas
non plus, car dans ce cas, Combo1.Text passe en lecture seule et j'ai
besoin d'y écrire, depuis le code ...
Cela ne change rien. Il suffit de suppprimer l'élément à changer,
d'ajouter un élément avec le nouveau texte et de le sélectionner.
--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
merci de ta réponse ... j'aurais dû le mentionner, désolé ! mais cela ne me convient pas non plus, car dans ce cas, Combo1.Text passe en lecture seule et j'ai besoin d'y écrire, depuis le code ...
Cela ne change rien. Il suffit de suppprimer l'élément à changer, d'ajouter un élément avec le nouveau texte et de le sélectionner.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
scraper
Bonjour Patrick Philippot (dans news:eSMy$) tu nous disais :
scraper wrote:
merci de ta réponse ... j'aurais dû le mentionner, désolé ! mais cela ne me convient pas non plus, car dans ce cas, Combo1.Text passe en lecture seule et j'ai besoin d'y écrire, depuis le code ...
Cela ne change rien. Il suffit de suppprimer l'élément à changer, d'ajouter un élément avec le nouveau texte et de le sélectionner.
Ah ?
OK, merci, je vais voir comment adapter ça à mon code ... mais ça me semble particulièrement lourd ... merci tout de même !
--
Attention ! Adresse mail invalide ... Pour me contacter, cliquez sur le lien ci-dessous: http://scraper.chez.tiscali.fr/contact.htm
scraper
Bonjour Patrick Philippot
(dans news:eSMy$2X7EHA.3756@TK2MSFTNGP14.phx.gbl)
tu nous disais :
scraper wrote:
merci de ta réponse
... j'aurais dû le mentionner, désolé ! mais cela ne me convient pas
non plus, car dans ce cas, Combo1.Text passe en lecture seule et j'ai
besoin d'y écrire, depuis le code ...
Cela ne change rien. Il suffit de suppprimer l'élément à changer,
d'ajouter un élément avec le nouveau texte et de le sélectionner.
Ah ?
OK, merci, je vais voir comment adapter ça à mon code ... mais ça me semble
particulièrement lourd ...
merci tout de même !
--
Attention ! Adresse mail invalide ...
Pour me contacter, cliquez sur le lien ci-dessous:
http://scraper.chez.tiscali.fr/contact.htm
Bonjour Patrick Philippot (dans news:eSMy$) tu nous disais :
scraper wrote:
merci de ta réponse ... j'aurais dû le mentionner, désolé ! mais cela ne me convient pas non plus, car dans ce cas, Combo1.Text passe en lecture seule et j'ai besoin d'y écrire, depuis le code ...
Cela ne change rien. Il suffit de suppprimer l'élément à changer, d'ajouter un élément avec le nouveau texte et de le sélectionner.
Ah ?
OK, merci, je vais voir comment adapter ça à mon code ... mais ça me semble particulièrement lourd ... merci tout de même !
--
Attention ! Adresse mail invalide ... Pour me contacter, cliquez sur le lien ci-dessous: http://scraper.chez.tiscali.fr/contact.htm
scraper
Patrick Philippot
scraper wrote:
Cela ne change rien. Il suffit de suppprimer l'élément à changer, d'ajouter un élément avec le nouveau texte et de le sélectionner.
Ah ?
OK, merci, je vais voir comment adapter ça à mon code ... mais ça me semble particulièrement lourd ...
Lourd? Allons, allons, ça prend 3 lignes
MonCombo.RemoveItem (n) MonCombo.AddItem "nouveau texte", n MonCombo.ListIndex = n
Je ne vois pas comment on pourrait faire plus simple.
-- Patrick Philippot - Microsoft MVP MainSoft Consulting Services www.mainsoft.fr
scraper wrote:
Cela ne change rien. Il suffit de suppprimer l'élément à changer,
d'ajouter un élément avec le nouveau texte et de le sélectionner.
Ah ?
OK, merci, je vais voir comment adapter ça à mon code ... mais ça me
semble particulièrement lourd ...
Lourd? Allons, allons, ça prend 3 lignes
MonCombo.RemoveItem (n)
MonCombo.AddItem "nouveau texte", n
MonCombo.ListIndex = n
Je ne vois pas comment on pourrait faire plus simple.
--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr