<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote">On Tue, Aug 27, 2013 at 9:44 PM, David Boddie <span dir="ltr"><<a href="mailto:david@boddie.org.uk" target="_blank">david@boddie.org.uk</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">On Tue Aug 27 15:53:59 BST 2013, Sarah Mount wrote:<br>
<br>
> sorry if this is a bit of a n00b question, but hopefully someone can<br>
> clarify a misunderstanding for me. I am working with some colleagues on a<br>
> Python2.x PyQt4 project and the GUI for this software has several drop-down<br>
> lists where each entry in the list is an integer, in numerical order. We<br>
> have had a (reproducible) bug report about these.<br>
<br>
</div>No problem. Sometimes what seems to be the simplest things can have<br>
surprising behaviour.<br>
<div class="im"><br></div></blockquote><div><br></div><div>Indeed :)</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">
> When a user clicks on the drop-down and types a number, the drop-down<br>
> scrolls to select that number. So, [contrived example] if the drop-down<br>
> contains entries 0-1000 and the user types 23, the drop-down scrolls to<br>
> reveal 23 (if necessary) and selects that entry on the list. So far, so<br>
> standard.<br>
><br>
> If the user selects a number with repeated digits, i.e. any multiple of 11<br>
> (in reality only tested on numbers <100) the wrong number is selected. For<br>
> example, if I open a drop-down and type "77" "70" gets selected. Is this<br>
> some obvious bug in the way we have configured our GUI or have I<br>
> misunderstood something really basic?<br>
<br>
</div>No, I think it's a bug in Qt, and probably in QAbstractItemView because<br>
that's what is providing the underlying list logic in the drop-down menu.<br>
The behaviour seems to be that the string used to search the data is checked<br>
to see if it is simply the same first character repeated throughout the<br>
string (e.g., "aaa" or "333") and handled specially. This seems to completely<br>
break the regular behaviour: if you try "77", it won't work, but "776" will<br>
cause it to navigate to the correct item.<br>
<br></blockquote><div><br></div><div>That makes sense. Is there an issue tracker I can submit this to?</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


If anyone wants to sanity check my reasoning, I think the problem is in<br>
QAbstractItemView::keyboardSearch().<br>
<br>
I can't immediately suggest a workaround. My instinct would be to use a<br>
completer to influence the way QComboBox finds items but I don't know if<br>
that will help, especially when the drop-down is open.<br><br></blockquote><div><br></div><div>I think in reality it is not a huge issue for users, although it's not ideal. I would guess that most integer input is probably not appropriately done with drop-downs!</div>

<div><br></div><div>Thanks,</div><div><br></div><div>Sarah</div></div><div><br></div>-- <br>Sarah Mount, Senior Lecturer, University of Wolverhampton<br>website:  <a href="http://www.snim2.org/" target="_blank">http://www.snim2.org/</a><br>

twitter: @snim2
</div></div>