سؤال

انا املك char[4] وأريد أن أكون قادرًا على طرحها في ملف QColor هل هناك طريقة يمكنني من خلالها التحويل مباشرة بدلاً من القيام بذلك:

const char foo[4] = { 128, 128, 128, 128 };
const QColor bar( foo[0], foo[1], foo[2], foo[3] );
هل كانت مفيدة؟

المحلول

سأفترض أنك تستخدم RGBA، لذا يمكنك استخدام المنشئ المقابل:

QColor::QColor(int r, int g, int b, int a = 255)

ينشئ لونًا بقيمة RGB r وg وb وقيمة قناة ألفا (الشفافية) لـ a.

يتم ترك اللون غير صالح إذا كانت أي من الوسائط غير صالحة.

يمكنك أيضًا استخدام الطريقة الثابتة التالية:

QColor QColor::fromRgb(int r, int g, int b, int a = 255) [ثابت]

وظيفة الراحة الثابتة التي تُرجع QColor المُنشأ من قيم ألوان RGB، r (أحمر)، g (أخضر)، b (أزرق)، وa (قناة ألفا، أي قناة ألفا).الشفافية).

يجب أن تكون كافة القيم في النطاق 0-255.

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