Optionen setzen, die nicht in der LlOptions-Enumeration enthalten sind

Click here for the English article.

Einleitung

Die LlOptions-Enumeration in List & Label bietet eine einfache Möglichkeit, Optionen in einer übersichtlichen und strukturierten Weise zu setzen. Doch was, wenn eine Option nicht in dieser Enumeration enthalten ist? Dieser Artikel erklärt, warum das so ist, wo man solche Optionen finden und wie man sie trotzdem setzen kann.

Welche Optionen sind unter anderem damit gemeint?

Warum sind nicht alle Optionen enthalten?

Es gibt verschiedene Gründe, warum bestimmte Optionen nicht in der LlOptions-Enumeration enthalten sind:

  1. Kompatibilitätsoptionen: Einige Optionen dienen dazu, die Kompatibilität mit älteren Versionen sicherzustellen. Diese werden selten benötigt und könnten die Übersichtlichkeit der Enumeration beeinträchtigen.
  2. Selten genutzte Optionen: Manche Optionen haben nur in speziellen Szenarien Relevanz und werden von den meisten Anwendern nicht benötigt.
  3. Übersichtlichkeit: Die LlOptions-Enumeration soll leicht verständlich und überschaubar bleiben. Zu viele Einträge könnten die Benutzung unnötig erschweren.

Wo findet man solche Optionen?

Diese zusätzlichen Optionen sind in der Dokumentation oder direkt in den C++ Headerdateien von List & Label definiert. Dort sind sie in der Regel mit einem #define-Makro versehen, das den numerischen Wert der Option festlegt.

Beispiel aus einer C++ Headerdatei:

#define LL_OPTION_COMPAT_ZUGFERDXMLPATH_PREVIEWEMBEDDING (423) /*default: false*/

Hierbei handelt es sich um die Option LL_OPTION_COMPAT_ZUGFERDXMLPATH_PREVIEWEMBEDDING, die den numerischen Wert 423 hat. Der Kommentar zeigt, dass der Standardwert für diese Option auf false gesetzt ist.

Wie setzt man diese Optionen?

Auch wenn die Option nicht in der LlOptions-Enumeration enthalten ist, kann sie mithilfe der Überladung von LlSetOption für ganzzahlige Werte gesetzt werden.

Syntax:

LlSetOption(int optionId, int value);

Beispiel:

// Die Option LL_OPTION_COMPAT_ZUGFERDXMLPATH_PREVIEWEMBEDDING (423) setzen
using combit.ListLabel30; // Namespace anpassen je nach Version

var ll = new ListLabel();

ll.Core.LlSetOption(423, 1); // Setzt die Option auf "true"

Zusammenfassung

  • Warum nicht in der Enumeration? Kompatibilitätsgründe, selten genutzte Optionen und um die Übersichtlichkeit zu wahren.
  • Wo zu finden? In der Dokumentation oder den C++ Headerdateien im Installationsverzeichnis von List & Label (…\combit\LL??\Beispiele\Visual C++).
  • Wie setzen? Mit der Methode LlSetOption(int optionId, int value).

Durch diese Flexibilität können auch solche spezifischen Einstellungen vorgenommen werden, die nicht explizit in der LlOptions-Enumeration aufgeführt sind. So bleibt die API sowohl leistungsfähig als auch übersichtlich.