ResolveIndexedColor metódus
Osztályoz egy indexelt színtokent, és konkrét ARGB értéket old fel, ha azt a munkafüzet palettája vagy a hívó által szolgáltatott rendszerszín-feloldó biztosítja
A metódus az IXLSWorkbook és a TXLSXWorkbook esetében egyaránt elérhető, és nem módosítja a munkafüzet állapotát
Szintaxis
function ResolveIndexedColor( AIndex: Int64; ASpace: TXLSIndexedColorSpace; out AResolution: TXLSIndexedColorResolution): Boolean; overload; function ResolveIndexedColor( AIndex: Int64; ASpace: TXLSIndexedColorSpace; ARole: TXLSIndexedColorRole; ASystemResolver: TXLSTryResolveSystemColor; out AResolution: TXLSIndexedColorResolution): Boolean; overload;
Indexterek
| Tér | Értelmezés |
|---|---|
xicsPublicColorIndex | Az 1..56 nyilvános palettaindexek a 8..63 BIFF palettahelyekre képeződnek le; az előjeles vagy előjel nélküli xlColorIndexAutomatic automatikusként osztályozódik |
xicsBiffIcv | A BIFF indexek a kiválasztott szerep alapján érvényesülnek: a betűtípus- és megjegyzésszínek az IcvFont részhalmazt, a keret- és kitöltésszínek az IcvXF részhalmazt, a diagramszínek az IcvChart részhalmazt használják, az általános keresés pedig a teljes Icv táblát |
xicsOoxmlIndexed | A 0..63 OOXML indexek az indexelt palettát címzik, a 64 és 65 a rendszer előtér- és háttérszínét azonosítja, a nagyobb értékek pedig érvénytelenek |
Eredmény
| Mező | Jelentés |
|---|---|
Kind | xickPalette, xickAutomatic, xickSystem vagy xickInvalid |
RawIndex | A változatlan bemeneti érték |
PaletteSlot | A nullától induló fizikai palettahely, vagy -1, ha a token nem palettaalapú |
SystemColorRole | A szemantikai rendszerszerep, ideértve az ablak szövegét, az ablak hátterét, a diagram szövegét, a diagram hátterét, a diagram semleges színét vagy az elemleírás szövegét |
ARGB | A normalizált konkrét szín, ha a HasResolvedColor true |
HasResolvedColor | Csak akkor true, ha a palettakeresés, egy rögzített formátumszín vagy az explicit visszahívás RGB értéket adott |
A függvény visszatérési értéke egyezik a HasResolvedColor értékkel; az osztályozás akkor is elérhető marad az AResolution-ben, ha a függvény false értéket ad vissza
Rendszerszín-szerződés
A rövidebb túlterhelés soha nem olvassa az aktuális Windows asztalt, ezért az automatikus és a környezettől függő rendszerszíneket feloldatlanul hagyja
A hosszabb túlterhelés mind a TXLSSystemColorRole, mind a TXLSIndexedColorRole értéket átadja az ASystemResolver-nek, lehetővé téve a hívó számára explicit UI-, export- vagy monitor nélküli megjelenítési szabályzat alkalmazását
A visszahívás kimenetének $AARRGGBB csatornasorrendet kell használnia; a nulla alfa-bájt $FF-re normalizálódik, míg a false visszahívási eredmény a szemantikai tokent osztályozva hagyja, de feloldatlanul
A Windows COLORREF $00BBGGRR csatornasorrendet használ, és a visszahívás visszaadása előtt $AARRGGBB-re kell konvertálni
Az érvénytelen tokenek soha nem hívják meg a visszahívást, és a rögzített BIFF diagramsemleges token visszahívás nélkül átlátszatlan feketére oldódik fel
Példa
if Workbook.ResolveIndexedColor(12, xicsPublicColorIndex, Resolution) then UseArgb(Resolution.ARGB); if not Workbook.ResolveIndexedColor($40, xicsBiffIcv, Resolution) then Assert(Resolution.Kind = xickSystem);