titleOfSelectedItem

RocouRocou Membre
2 avril modifié dans API SwiftUI #1

Bonjour,

Je voudrais récupérer le contenu sélectionné d'un NSPopUpButton.
c'est la valeur 20" qui est sélectionnée.
Voici mon bout de code:

@IBOutlet weak var Taux_de_TVA: NSPopUpButton!
// Plus loin...
print(Taux_de_TVA.titleOfSelectedItem)

Tout fonctionne, le résultat est Optional("20")
Maintenant je voudrais convertir cela en float afin de l'intégrer dans mes calculs mais rien de ce que j'ai fait jusqu'à présent n'est accepté par le compilateur.

Réponses

  • devulderdevulder Membre
    2 avril modifié #2

    @Rocou a dit :
    Bonjour,

    Je voudrais récupérer le contenu sélectionné d'un NSPopUpButton.
    c'est la valeur 20" qui est sélectionnée.
    Voici mon bout de code:

    `@IBOutlet weak var Taux_de_TVA: NSPopUpButton!

    // Plus loin...

    print(Taux_de_TVA.titleOfSelectedItem)
    `

    Tout fonctionne, le résultat est Optional("20")
    Maintenant je voudrais convertir cela en float afin de l'intégrer dans mes calculs mais rien de ce que j'ai fait jusqu'à présent n'est accepté par le compilateur.

    C'est simple en france la tva c'est 100% :smiley:

    La solution c'est de convertir la chaine en NSString

    if let s = Taux_de_TVA.titleOfSelectedItem { print((s as NSString).integerValue) }

  • RocouRocou Membre
    2 avril modifié #3

    Bon, j'ai finalement résolu le truc. J'imagine qu'en parler, ça aide :)

    let MonTauxDeTVA = Double(Taux_de_TVA.titleOfSelectedItem!)
    // dans les calculs j'utilise donc MonTauxDeTVA! )
    
  • PyrohPyroh Membre

    Chacun des NSMenuItem du popup button ont une propriété representedObject de type Any?. Tu peux y mettre directement tes valeurs.

    D'ailleurs en parlant de valeurs, si tu veux compter des sous utilise Decimal plutôt que Float ou Double. Enfin sauf si t'aime les erreurs d'arrondi et les aberrations dues à la représentation des nombres décimaux en binaire 😉

    PS: c'est quoi ces noms de variable ? On fait du COBOL ou quoi ?

  • @Pyroh a dit :
    Chacun des NSMenuItem du popup button ont une propriété representedObject de type Any?. Tu peux y mettre directement tes valeurs.

    D'ailleurs en parlant de valeurs, si tu veux compter des sous utilise Decimal plutôt que Float ou Double. Enfin sauf si t'aime les erreurs d'arrondi et les aberrations dues à la représentation des nombres décimaux en binaire 😉

    PS: c'est quoi ces noms de variable ? On fait du COBOL ou quoi ?

    Encore plus simple, il y a la propriété tag de type Integer

  • PyrohPyroh Membre

    @devulder a dit
    Encore plus simple, il y a la propriété tag de type Integer

    :neutral:

  • RocouRocou Membre
    3 avril modifié #7

    Ha oui, merci @Pyroh pour le rappel concernant Decimal.
    Qu'est-ce qu'ils ont mes noms de variables ? :)

    @devulder Merci mais non, le type integer pour de la TVA, n'est pas toujours approprié. Quoique avec 100% de TVA... :)

  • @Rocou a dit :
    Ha oui, merci @Pyroh pour le rappel concernant Decimal.
    Qu'est-ce qu'ils ont mes noms de variables ? :)

    @devulder Merci mais non, le type integer pour de la TVA, n'est pas toujours approprié. Quoique avec 100% de TVA... :)

    Ah mince, j'avais oublié :) Alors la méthode @Pyroh est la meilleure
    Sinon tu px également stocker les taux de tva dans un tableau et lire la propriété indexOfSelectedItem

  • @Pyroh a dit :

    @devulder a dit
    Encore plus simple, il y a la propriété tag de type Integer

    :neutral:

    Oops, boulette. désolé

Connectez-vous ou Inscrivez-vous pour répondre.