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