Ställer in cellmönstrets (bakgrunds) färg till en av de 12 Office-temafärgplatserna med en valfri nyansjustering. Detta är mönsterfärgföljaren till
Interior.SetThemeColor — använd den tillsammans med ett icke-solid
Mönster för att rendera streckade/prickade fyllningar som ominstrerar när Excel tillämpar om arbetsboktema. Tillgänglig sedan v2.61.0 (diagrambacklog wave D fas 4)
Syntax
procedure SetPatternThemeColor(ThemeIdx: Word; Tint: Double);
Parametrar
ThemeIdx — 0-baserad temaplats
(0=lt1, 1=dk1, 2=lt2, 3=dk2, 4..9=accent1..6, 10=hlink, 11=foHlink)
Tint — specifikationsliknande ljusare/mörkare justering i intervallet -1.0 .. +1.0
Kodad i FullColorExt.nTintShade som ett Q15 teckenat heltal på XFExt-posten
Anmärkningar
Två trådar sänds ut för varje anrop så att cellen renderas korrekt i både Excel 2007+ och Excel 2003:
- XF-posten får en bästa möjliga indexerad icv för mönsterfärgen (legacy reader path)
- XFExt-posten $087D får en FullColorExt-plats för extType
fillBg ($0005) med xclrType=3 (tema), xclrValue=ThemeIdx och nTintShade härledd från Tint
Läsning via
Interior.PatternColor returnerar det lösta RGB-värdet (tema + nyans applicerad), så anropare ser alltid ett konkret LongWord
Exempel
Renderar ett randigt varningsband med accent1 / accent2-temaplatserna så att färgerna följer arbetsboktema
var
Stripes: IXLSRange;
begin
Stripes := Workbook.Sheets[1].Range['B2', 'B10'];
Stripes.Interior.Pattern := xlPatternGray25;
Stripes.Interior.SetThemeColor(4, 0.4); // fill foreground (accent1, lighter)
Stripes.Interior.SetPatternThemeColor(5, - 0.25); // pattern color (accent2, darker)
Workbook.SaveAs('PatternThemeFills.xls', xlExcel97);
end;
Se även