Wenn Excel Linien in einem Diagramm zeichnet, weist es den Spuren für jede Datenreihe Standardfarben zu. Schwarz für den ersten, Cyan für den zweiten usw. Ist die Zuordnung dieser Farben dokumentiert? Ich möchte mit Delphi Spuren in einem Diagramm zeichnen, möchte aber die Farben so beibehalten, wie sie in Excel verwendet werden (die Delphi-App ersetzt Dinge, die derzeit mit Excel-Arbeitsmappen erledigt werden).Abrufen der Delphi-Farbwerte für Excel-Diagrammlinien
Antwort
'Chart fill' und 'chart line' Standardfarben sind über das Menü zugänglich: Extras -> Optionen -> Farben (zumindest wenn Excel ein Menü hatte - ich weiß nichts über neuere Versionen). Standardfarben können pro Arbeitsmappe geändert werden und sind daher eine Eigenschaft der Arbeitsmappe. Insgesamt gibt es auf der Optionsseite "Farbe" 56 Farben, von denen 8 zu Diagrammfüllungen und 8 zu Diagrammlinien gehören.
Wenn Sie Automatisierung tun können Sie eine Arbeitsmappe Standardfarbe von abrufen:
TColor(XL.Workbooks[1].Colors[Index])
wo ‚XL‘ die Excel-Anwendung ist, ‚1‘ ist die Arbeitsmappe Index und ‚Index‘ ist eine Zahl zwischen 1 und 56. Ein kleiner Test mit einer früheren Excel-Version zeigt, dass Index 17-24 Füllfarben und 25-32 Linienfarben sind. Aber Sie tun Ihre eigenen Tests, falls sich Änderungen ergeben haben.
BTW, ich bin überrascht über Ihr Problem, dass Delphi überschreiben Standardfarben ..
- 1. Abrufen der Sicherheitsbeschreibung und Abrufen der Nummer für FileSystemRights
- 2. Abrufen der Python-Funktion für ein Codeobjekt
- 3. Abrufen der für einen OleDBCommand verwendeten Abfrage
- 4. Abrufen und Festlegen der Lautstärke für iOS
- 5. Abrufen der COM-Klassenfabrik für Komponente fehlgeschlagen
- 6. Abrufen der Profilid für eine Benutzer-ID
- 7. Abrufen der Spaltenliste für eine PK
- 8. Abrufen der Filialabdeckung für Golang-Tests
- 9. Abrufen der vollständigen Liste der Transaktionen für Hyperverteiler
- 10. TFS API: Abrufen der Liste der Teams für ein Teamprojekt
- 11. Abrufen der CLR-ID
- 12. Portnummer für Servicename abrufen?
- 13. Authentifizierung für NeverBounce abrufen
- 14. Delphi Abrufen der Dateiposition
- 15. Abrufen der Domain-URL
- 16. Abrufen der Anwendungspoolidentität programmgesteuert
- 17. Kontext der Vordergrundaktivität abrufen
- 18. Abrufen der aktuellen Bildnummer
- 19. Abrufen der IP-Adresse
- 20. Wert der Abfragezeichenfolge abrufen
- 21. Verzeichnisse für UNC-Root abrufen
- 22. Benutzerdaten für jede Anfrage abrufen
- 23. Parameter für Webdienst programmgesteuert abrufen?
- 24. Abrufen des Variablennamens für NullReferenceException
- 25. Abrufen von Microsoft.Web.Services3 für VS2010
- 26. Zugriffstoken für Outlook-Kalender abrufen
- 27. Bildregler für automatische Wiedergabe abrufen
- 28. Abrufen der Positionsgenauigkeit mit geopy
- 29. Abrufeinschränkungen in der Sammlungsansichtszelle abrufen?
- 30. Django: Liste der Modellfelder abrufen?
Missverständnis. Als ich sagte "Die Delphi-App ersetzt Dinge, die derzeit mit Excel-Arbeitsmappen erledigt werden", meinte ich: Der Kunde verwendet derzeit Excel, um seine Diagramme zu erstellen. Ich schreibe eine Delphi-App, um zu ersetzen, was Excel gerade für ihn tut, und ich möchte, dass meine Diagrammlinienfarben auf die gleiche Weise wie Excel zugewiesen werden, so dass ihre Diagramme immer noch die gleiche Zuweisung von Linienfarben haben. Was ich wissen muss, ist Pen.Color: = ExcelChartLineColor (0), aber dein Vorschlag sollte funktionieren, wenn ich eine schnelle und dreckige App zusammenstelle, um die Farben auszudrucken – rossmcm
In der Tat habe ich missverstanden, danke für die Erklärung von @user. –
Die 56 Farben sind hier aufgeführt: http://www.mvps.org/dmcritchie/excel/colors.htm – rossmcm