كسبيثون RichTextCtrl أبطأ بكثير من النص tkInter؟
-
21-08-2019 - |
سؤال
ولقد قدمت أداة صغيرة أن يوزع جزءا من النص، لا معالجة بعض بسيطة (باسترداد القيم من القاموس، وعدد قليل التعابير المنطقية، الخ) ومن ثم يبصق على النتائج.
في أجل جعل أسهل للقراءة النتائج، وأنا قدمت اثنين من منافذ الرسوم البيانية، واحدة مع tkInter وغيرها مع كسبيثون، بحيث يتم عرض الانتاج بشكل جيد في منطقة النص مع بعض الكلمات ذات ألوان مختلفة.
وتنفيذ tkInter يستخدم الكائن Tkinter.Text
وتطبيق الألوان إلى كلمات تستخدم علامات (تكوين مع Tkinter.Text.tag_config
طريقة وتمريرها إلى Tkinter.Text.insert
)، ويقاس أثناء إخراج حوالي 400 كلمة ملونة مختلفة و<0.02s.
ويستخدم تنفيذ كسبيثون wx.richtext.RichTextCtrl
ولتطبيق الألوان إلى كلمات يستخدم wx.richtext.RichTextCtrl.BeginTextColour
ثم wx.richtext.RichTextCtrl.AppendText
. أداء أمر مثير للسخرية، فإنه يأخذ تتاخم 1.4S للقيام بنفس المهمة التي لم تكن الا 0.02s إلى ميناء tkInter.
هل هذه المشكلة لا يتجزأ من القطعة RichTextCtrl، الارتباطات كسبيثون، أو هل هناك طريقة لتسريع العملية؟
وشكرا!
المحلول
وأنا هنا نسخ التعليق الذي حل المشكلة:
<اقتباس فقرة>هل حاولت استخدام تجميد () و ذوبان الجليد () لتحديث فقط على الشاشة بعد الانتهاء إلحاق نص ملون؟ - mghie 30 يونيو الساعة 7:20
اقتباس فقرة>نصائح أخرى
وانها نوع من يتجنب السؤال قليلا، ولكن هل يمكن استخدام wxStyledTextCtrl بدلا من ذلك؟