الحصول على وتعيين نمط للخلايا باستخدام C++
Cell.GetStyle
و Cell.SetStyle
. تفحص هذه المقالة طريقة Cell.GetStyle
/SetStyle
لمساعدتك على الحكم على التقنية الأنسب لك.
تنسيق الخلايا
هناك طريقتان لتنسيق الخلية، كما هو موضح أدناه.
استخدام GetStyle()
باستخدام قطعة الكود التالية، يتم تهيئة كائن Style
لكل خلية عند تنسيقها. إذا تم تنسيق العديد من الخلايا، يتم استهلاك كمية كبيرة من الذاكرة لأن كائن Style
هو كائن كبير. لن يتم تحرير هذه الكائنات Style
حتى يتم استدعاء طريقة Workbook.Save
.
C++
cell.GetStyle()->GetFont()->SetIsBold(true);
استخدام SetStyle()
النهج الأول سهل ومباشر، فلماذا أضفنا النهج الثاني؟
أضفنا النهج الثاني لتحسين استهلاك الذاكرة. بعد استخدام طريقة Cell.GetStyle
لاسترداد كائن Style
، قم بتعديله واستخدم طريقة Cell.SetStyle
لإعادة تعيينه إلى هذه الخلية. لن يتم الحفاظ على كائن Style
هذا، وسيقوم بيئة التشغيل C++ بجمعه عندما لا يعود مرجعًا إليه.
عند استدعاء طريقة Cell.SetStyle
، لا يتم حفظ كائن Style
لكل خلية. بدلاً من ذلك، نقارن هذا الكائن مع مخزن كائنات Style
داخلي لنرى إذا كان يمكن إعادة استخدامه. فقط الكائنات Style
التي تختلف عن الموجودة تُحتفظ بها لكل كائن Workbook
. هذا يعني أن هناك عدة مئات فقط من كائنات Style
لكل ملف إكسل بدلاً من الآلاف. لكل خلية، يُحفظ فقط مؤشر على مخزن كائن Style
.
C++
auto style = cell.GetStyle();
style->GetFont()->SetIsBold(true);
cell.SetStyle(style);