7. Überblick Tabellenobjekt¶
In Tabellen können Texte und Zahlen in Spalten angeordnet werden, ohne das Tabulatorzeichen oder Leerzeichen verwendet werden müssen.
Alle Eigenschaften und Funktionen eines Tabellenobjekts können über das
Programmierinterface erreicht werden. Den Quellcode der Funktionen finden Sie in
den Dateien mn_table.ic
und obj_table.ic
im Verzeichnis
uniplot\script
.
7.1. Ein kleines Beispiel¶
// autoload\AddMyTable.ic
RegisterCommand("Tabelle", "AddMyTable", "Meine Tabelle einfügen")
UserBar_AddCommand("AddMyTable")
def AddMyTable()
{
hPage = AppGetActivePage();
if (hPage == 0) return;
hLayer = GetSelectedLayers();
smText = ["Name", "Peter Müller"; "Abteilung", "MAB3"; "Projet", "1234"];
hTable = TableCreate(smText);
LayerAddObjects(hLayer, hTable);
PageReplot(hPage);
}
7.2. Füllfarben, Fonts, Randlinie, Format¶
Für die Füllfarben der Zellen, die verwendeten Fonts und die Randlinien werden in jeder Tabelle entsprechende Listen geführt. In jeder Zelle wird nur ein Verweis (Index) auf die entsprechenden Elemente gespeichert. Wenn beispielsweise ein Bereich von Zellen mit einem speziellen Font ausgegeben werden sollen, erzeugt man zuerst den neuen Font, fügt den Font mit der Funktion TableAddFont in die Liste ein. Die Funktion liefert den Index des neuen Fonts zurück. Mit dem Index kann dann für die gewünschten Zellen der Font über die Funktion TableSetFontIndex gesetzt werden. Der Index beginnt mit dem Wert 1. Für ein Programmbeispiel siehe TableAddFont oder TableAddBrush.
Bei Füllfarben ist zu beachten, das der Index 0 eine besondere Bedeutung hat. Um eine Zelle mit transparenter Füllung auszugeben, wird der Index 0 über die Funktion TableSetBrushIndex übergeben.
7.3. Position und Größe¶
Die Postion und Größe wird mit der Funktion OBJSetPosSize gesetzt.
7.4. Funktionen¶
Erzeugen und Zerstören | |
---|---|
TableCreate | TableCreate erzeugt ein neues Tabellenobjekt. |
TableDestroy | TableDestroy zerstört ein Tabellenobjekt. |
Setzen | |
---|---|
TableDeleteColumn | TableDeleteColumn löscht eine Spalte. |
TableDeleteRow | TableDeleteRow löscht eine Zeile der Tabelle. |
TableInsertColumn | TableInsertColumn fügt eine neue Spalte ein. |
TableInsertRow | TableInsertRow fügt eine neue Zeile ein. |
TableMergeCells | TableMergeCells verbindet die gegebenen Zellen zu einer Zelle. |
TableRedo | TableRedo |
TableSetAlign | TableSetAlign setzt die Textausrichtung für die Tabelle oder für einen Ausschnitt der Tabelle. |
TableSetColumnWidth | TableSetColumnWidth setzt die Spaltenbreiten in cm. |
TableSetEdgeDistance | TableSetEdgeDistance setzt den Abstand des Textes zum Rand der Zelle. |
TableSetFormatIndex | TableSetFormatIndex setzt die Indizes der Formatierung für die Ausgabe der Zellen. |
TableSetName | Tauscht den vorhandenen Namen einer Zelle, einer Auswahl von Zellen oder in allen Zellen aus. |
TableSetProps | TableSetProps setzt die Properties einer Tabelle. |
TableSetRowHeight | TableSetRowHeight setzt die Zeilenhöhe aller Tabellenzeilen. |
TableSetSelection | Setzt die Selektion. |
TableSetText | Tauscht den vorhandenen Test einer Zelle, einer Auswahl von Zellen oder in alle Zellen aus. |
TableSetTextAngle | TableSetTextAngle setzt die Textrichtung für die Tabelle oder für einen Ausschnitt der Tabelle. |
TableUnMergeCell | TableUnMergeCell löst die zu einer Zelle verbundenen Zellen wieder auf. |
TableUndoEnd | TableUndoEnd |
TableUndoStart | TableUndoStart |
TableUsePlaceholderDialog | TableUsePlaceholderDialog legt fest, welcher Dialog zur Bearbeitung der Texte verwendet werden soll. |
Erfragen | |
---|---|
TableGetAlign | TableGetAlign liefert die Textausrichtung als Matrix der gesamten Tabelle oder eines Ausschnitts. |
TableGetAttrib | TableGetAttrib liefert für jede Zelle einen Attributwert als Matrix der gesamten Tabelle oder eines Ausschnitts |
TableGetColumnWidth | TableGetColumnWidth liefert einen Vektor mit den Spaltenbreiten. |
TableGetEdgeDistance | TableGetEdgeDistance erfragt den Abstand des Textes zum Rand der Zelle. |
TableGetMergedCells | TableGetMergedCells liefert eine Matrix. Jede Zeile der Matrix definiert einen Zellbereich, der zu einer Zelle verbunden ist. |
TableGetName | Liefert den Name einer Auswahl von Zellen oder von allen Zellen zurück. |
TableGetProps | TableGetProps erfragt die Properties einer Tabelle. |
TableGetRowHeight | TableGetRowHeight liefert einen Vektor mit den Zeilenhöhen. |
TableGetSelection | TableGetSelection liefert die aktuelle Selektion zurück. |
TableGetSize | Liefert die Zeilen- und Spaltenanzahl einer Tabelle. |
TableGetText | Liefert den Text einer Auswahl von Zellen oder von allen Zellen zurück. |
TableGetTextAngle | TableGetTextAngle liefert die Textrichtung (Winkel) für die Tabelle oder für einen Ausschnitt der Tabelle. |
TableGetTextExt | Liefert die Textausdehnung einer Spalte der Tabelle. |
TableIsCellMerged | TableIsCellMerged erfragt ob eine angegebene Zelle aus mehreren verbundenen Zellen besteht. |
TableIsPlaceholderDialogUsed | TableIsPlaceholderDialogUsed erfragt ob beim Maus-Doppelklick auf eine Tabelle das Dialogfeld zur Bearbeitung der $-Texte (Platzhalter) oder der Standard-Dialog angezeigt wird. |
TableSetAttrib | TableSetAttrib setzt für jede Zelle einen Attributwert. |
TableSetSize | Ändert die Zeilen- und Spaltenanzahl einer Tabelle. |
Fonts | |
---|---|
TableAddFont | TableAddFont fügt der Fontliste einer Tabelle einen neuen Font zu. |
TableGetFontIndex | TableGetFontIndex liefert die Indizes des Fonts (Schriftart) für die Ausgabe der Texte zurück. |
TableGetFontList | TableGetFontList liefert alle Fonthandle (Zugriffsnummer) der Fontliste als Vektor zurück. |
TableSetFontIndex | TableSetFontIndex setzt die Indizes des Fonts (Schriftart) für die Ausgabe der Texte. |
Füllfarben | |
---|---|
TableAddBrush | TableAddBrush fügt eine neue Füllfarbe in die Füllfarbenliste (brush list) ein. |
TableGetBrushIndex | TableGetBrushIndex liefert die Indizes des Füllfarben (Brush) für die Ausgabe der Zellen zurück. |
TableGetBrushList | TableGetBrushList liefert eine Matrix mit 3 Spalten mit in der Tabelle verwendeten Füllfarben. |
TableSetBrushIndex | TableSetBrushIndex setzt die Indizes der Füllfarben (Brush) für die Ausgabe der Zellen. |
Rahmenlinien | |
---|---|
TableAddPen | TableAddPen fügt der Penliste einer Tabelle einen neuen Zeichenstift zu. Der Zeichenstift legt fest mit welcher Farbe und welcher Linienstärke die Zellenrandlinien ausgegeben werden sollen. |
TableGetBorderPenIndex | TableGetBorderPenIndex liefert die Indizes der Zeichenstifte für die Ausgabe der Randlinien zurück. |
TableGetPenList | TableGetPenList liefert alle Penhandle (Zugriffsnummern) der Penliste als Vektor zurück. Ein Pen ist ein Zeichenstift. Er legt die Farbe und die Linienstärke der Randlinien der Zellen fest. |
TableSetBorderPenIndex | TableSetBorderPenIndex setzt für die Randlinien den Index des Zeichenstifts, der für die Ausgabe verwendet werden soll. Jede Zelle wird von 4 Randlinien umschlossen. |
id-955647