كيفية السماح التوسع مع الجانب نسبة موحدة في (السنة التحضيرية) كيو تي؟

StackOverflow https://stackoverflow.com/questions/1631574

سؤال

إذا كنت قد لف كيماغي داخل QLabel، هل من الممكن أن يدرج لأعلى أو لأسفل عند تغيير حجم النافذة والمحافظة على نسبة الارتفاع (حتى الصورة لا تصبح مشوهة)؟ أنا أحسب أنه يمكن توسيع نطاق استخدام setScaledContents ()، ويمكنك ان تحدد الحد الأدنى والحد الأقصى لحجم، ولكن الصورة لا تزال يفقد جانبها.

وسيكون أمرا رائعا إذا كان هذا يمكن أن يفسر باستخدام بيثون (لأنني لا أعرف ج ++)، ولكنني سوف تأخذ ما يمكنني الحصول عليه. : -)

ويرجع الفضل في ذلك مسبقا!

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

المحلول

وأنا يظهر هذا النحو C ++، وهو ما وثائق أنا أبحث في هو، إذ لا ينبغي أن يكون من الصعب جدا على اعتناق الثعبان.

وتحتاج إلى إنشاء مشتق مخصصة للQLayoutItem، الذي يتجاوز bool hasHeightForWidth() وint heightForWidth( int width) للحفاظ على نسبة الارتفاع بطريقة أو بأخرى. هل يمكن إما تمرير الصورة في والاستعلام، أو هل يمكن أن مجرد تعيين نسبة مباشرة. سوف تحتاج أيضا للتأكد من أن وظيفة widget() بإرجاع المؤشر إلى التسمية المناسبة.

ومتى تم ذلك، يمكنك إضافة عنصر تخطيط إلى تخطيط بنفس الطريقة تفعل في القطعة. لذلك عندما يحصل على إضافة العلامة الخاصة بك، تغييره إلى استخدام عهدك فئة العنصر التخطيط.

وأنا لم تختبر في الواقع أي شيء من هذا، لذلك هو الحل النظري في هذه المرحلة. أنا لا أعرف أي طريقة للقيام بذلك من خلال حل مصمم، اذا كان ذلك المطلوب.

نصائح أخرى

وتحويل الصورة إلى QPixmap (استخدام QPixmap.fromImage(img)) وبعد ذلك، يمكنك استخدام scaledToHeight() .

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