Es gibt ein paar Dinge falsch mit Ihrem Code sind
Erstens haben Wörterbücher keine festgelegten Reihenfolge, so dass die Tasten werden nicht unbedingt in der gleichen Reihenfolge am Ende, dass sie sich in eingefügt:
>>> items = {
... 'Maya Executable': '',
... 'Render': '',
... 'Mayapy Interpreter': '',
... 'imgcvt': '',
... 'IMConvert': '',
... }
>>> items.keys()
['Mayapy Interpreter', 'IMConvert', 'imgcvt', 'Render', 'Maya Executable']
So "Maya Executable" ist nicht das erste Element in der Liste der Schlüssel.
Zweitens versuchen Sie, den aktuellen Index vor die Elemente hinzuzufügen, wenn Sie es später festlegen sollten. So wie es ist, wird die Combo-Box standardmäßig das erste Element anzeigen, was "Mayapy Interpreter" wäre.
EDIT:
from collections import OrderedDict
...
self.items = OrderedDict([
('Maya Executable', ''),
('Render', ''),
('Mayapy Interpreter', ''),
('imgcvt', ''),
('IMConvert', ''),
])
self.appExeCB.addItems(self.items.keys())
(NB: Python> = 2.7 für OrderedDict erforderlich)
Wenn Sie eine OrderedDict, Ihr Beispielcode verwenden sollten wie erwartet
Vorsicht! Die Reihenfolge der Schlüssel aus einem Python-Diktat ist nicht garantiert stabil. Sie müssen das Ergebnis des ersten Aufrufs von self.items.keys() behalten und diese spezifische Liste verwenden. Bei erneutem Aufruf von self.items.keys() können die gleichen Schlüssel anders sortiert werden. – LBarret