Combobox

Signaler
Messages postés
34
Date d'inscription
lundi 14 août 2006
Statut
Membre
Dernière intervention
4 janvier 2012
-
Messages postés
14773
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
7 mars 2021
-
bonjours
je debut en sous visaul studio
voila mon probleme
j'ai fait un combobox avec des valeurs à selectionner 0.01 µseconde 0.2 milliseconde ......etc..... qui coresponde à des calibres
et je voudrais me servir du calibre selectionner dans le combobox pour le faire rentrer dans une formule
quand je vais selectionner 0.1 µseconconde il faut que dans ma formulle le chiffre 0.000 000 1 apparaisse
apres de meme pour les 30 autres calibres que j'ai
j'ai aussi un probleme pour declarer ma variable je sais pas comment l'apeller je pensais à single ou double mais ca prend pas 0.0000....
comment je peux faire
merci

a+

3 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
74
Salut
Dans les ComboBox, il n'y a pas de Tag pour chaque Item, comme dans les ListView (...)
Tu ne peux donc pas attacher un chiffre à un Item / Text facilement.

L'idée que j'aurais serait de ranger dans une collection de classes ou un tableau de structures du genre :
    Private Structure typeCalibres
        Dim Appellation As String
        Dim Valeur As Double
    End Structure
    Private aCalibres(0 To 29) As typeCalibres
Avec Appellation, tu ranges tous les textes ("0.01 µseconde", ...) que tu insèreras à l'init de ton projet dans ta ComboBox, et avec Valeur, tu récupères par indexation en fonction du ComboBox1.SelectedIndex, le coefficient équivalent (0.00000001)

Un Single ou un Double ira amplement : Ce n'est que l'affichage de la valeur qui ne te plait pas, mais on ne sait pas trop ce que tu vois ...

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
34
Date d'inscription
lundi 14 août 2006
Statut
Membre
Dernière intervention
4 janvier 2012

merci beaucoup jack je vais faire un essais
a+
Messages postés
14773
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
7 mars 2021
151
Bonjour,

Une autre solution :
Public Class ClsComboElement_Double
    Private mValue as Double
    Private mText as String

    Public sub New(Byval pText as String, ByVal pValue as Double)
        mValue=pValue
        mText=pText
    End Sub

    Public ReadOnly Property Value() as Double
        Get
            Return mValue
        End Get
    End Property

    Public Overrides Function ToString() as String
        Return mText
    End Function
End Class


Ensuite pour l'ajout :
Combo1.Items.Add(New ClsComboElement_Double("0.1µs",0.0000001)


Pour savoir quelle est la valeur de l'enregistrement sélectionné :
Valeur=DirectCast(Combo1.SelectedItem,ClsComboElement_Double).Value


A toi de voir ce qui te convient le mieux.

Mon site