سؤال

لدي ListCtrl Wxpython مع خمسة أعمدة. أربعة من هذه السلاسل القابضة، آخر واحد لديه القيم عدد صحيح. لقد قمت بتخزين هذه السلاسل (أي "4"، "17"، إلخ). ومع ذلك، الآن بعد أن أضافت كوليسيندروسيين للسماح لي بفرز أعمدة محددة في القائمة، أجد ذلك، بالطبع، أن العمود عدد صحيح يتم فرزه إلى حد كبير بدلا من عدديا.

هل هناك طريقة بسيطة لإصلاح هذا؟

هل كانت مفيدة؟

المحلول

أعتقد أن الطريقة الأكثر قوة للقيام بفرز حسب الطلب هي استخدام SortiTems () وظيفة في wx.listctrl. لاحظ أنه يجب عليك توفير بيانات العنصر لكل عنصر (باستخدام SetItemData())

فقط تقديم رد الاتصال الخاص بك، ويقول:

def sortColumn(item1, item2):
    try: 
        i1 = int(item1)
        i2 = int(item2)
    except ValueError:
        return cmp(item1, item2)
    else:
        return cmp(i1, i2)

لم يتحقق ذلك، ولكن يجب أن يعمل شيء على طول هذه الخطوط لجميع الأعمدة، إلا إذا كان لديك عمود حيث توجد بعض القيم سلاسل أعداد صحيحة وبعضها غير كذلك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top