[Corrigé] Bug ComboBox sous PB 6.01

Sujets variés concernant le développement en PureBasic
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

[Corrigé] Bug ComboBox sous PB 6.01

Message par boddhi »

 
Bug signalé sur le Forum US.

Le code ci-dessous fonctionne parfaitement de PB 5.72 à PB 6.00 (tests effectués sous W10 x64)
GetGadgetState() retourne le bon n° d'item

Or avec PB 6.01, GetGadgetState() retourne bien 0 pour le premier item mais -1 pour les items suivants identiques !

J'ai découvert ce bug alors que mon combobox recevait des données identiques après une requête SQL (Note : Retour de données identiques tout à fait normal et prévu)

Code : Tout sélectionner

If OpenWindow(0, 0, 0, 270, 180, "ComboBoxGadget", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  ComboBoxGadget(0, 10, 10, 250, 21,#PB_ComboBox_Editable)
  AddGadgetItem(0, -1, "Item X")
  AddGadgetItem(0, -1, "Item X")
  AddGadgetItem(0, -1, "Item 4")
  AddGadgetItem(0, -1, "Item X")
  AddGadgetItem(0, -1, "Item X")
  StringGadget(1,10,40,250,21,"")
  
  Repeat
    Select WaitWindowEvent()
      Case #PB_Event_CloseWindow
        Break
      Case #PB_Event_Gadget
        If EventGadget()=0 And EventType()=#PB_EventType_Change
          SetGadgetText(1,Str(GetGadgetState(0)))
        EndIf
    EndSelect
  ForEver
EndIf
Edit : Précision de la version PB mise en cause

J'ai oublié de préciser que ce problème ne se produit pas quand il n'y a pas l'option #PB_ComboBox_Editable
Dernière modification par boddhi le jeu. 11/mai/2023 6:53, modifié 1 fois.
Avatar de l’utilisateur
Micoute
Messages : 2584
Inscription : dim. 02/oct./2011 16:17
Localisation : 35520 La Mézière

Re: Bug ComboBox sous PB 6.01

Message par Micoute »

Bonjour boddhi,

pour moi, l'erreur se produit justement avec l'option #PB_ComboBox_Editable où il répond -1 à la place d'indiquer la position cliquée, j'utilise la version 6.02 beta 3 LTS (x64)
Dernière modification par Micoute le jeu. 11/mai/2023 8:19, modifié 1 fois.
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Bug ComboBox sous PB 6.01

Message par boddhi »

Micoute a écrit : [...]
Bonsoir Micoute,
Boddhi a écrit : J'ai oublié de préciser que ce problème ne se produit pas quand il n'y a pas l'option #PB_ComboBox_Editable
Ma phrase était peut-être mal tournée mais effectivement, le bug se produit uniquement lors de l'emploi de #PB_ComboBox_Editable et ce, depuis, la version 6.01.
Avant, non !

L'excellent RASHAD sur le forum US me dit que c'est normal, que je ne devrais pas avoir plusieurs items identiques dans une liste combo.
Avis que je ne partage pas pcq :
1) Qu'est-ce qui l'interdirait ? Je distingue ces items identiques grâce à des SetGadgetItemData/GetGadgetItemData.
2) Pourquoi ça marche sans l'emploi de la constante ? Ce serait donc un bug dans ce cas-là !
3) Pourquoi ça fonctionnait très bien jusqu'à la version 6.00 comprise ? Ce serait donc un bug historique ?! Je ne crois pas...

En tout cas, ça m'allait très bien comme ça jusqu'ici !!! :D Donc, pourquoi changer un truc pratique et fonctionnel ?

Je n'ai pas testé avec les versions Beta. J'avoue ne jamais en installer. :)

PS : 6.05 ? j'en suis resté à la beta 6.02... Erreur de frappe ?
boddhi
Messages : 604
Inscription : lun. 26/avr./2010 16:14
Localisation : S 48° 52' 31'' / O 123° 23' 33''

Re: Bug ComboBox sous PB 6.01

Message par boddhi »

Correction du bug annoncé par Fred.
Répondre