Combobox

cs_biboulou Messages postés 34 Date d'inscription lundi 14 août 2006 Statut Membre Dernière intervention 4 janvier 2012 - 17 mai 2010 à 22:08
NHenry Messages postés 15117 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 10 mai 2024 - 18 mai 2010 à 10:14
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

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
18 mai 2010 à 00:50
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)
0
cs_biboulou Messages postés 34 Date d'inscription lundi 14 août 2006 Statut Membre Dernière intervention 4 janvier 2012
18 mai 2010 à 06:16
merci beaucoup jack je vais faire un essais
a+
0
NHenry Messages postés 15117 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 10 mai 2024 159
18 mai 2010 à 10:14
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
0
Rejoignez-nous