.. highlightlang:: us .. _tablecreate: TableCreate =========== .. index:: TableCreate .. us.tag TableCreate table.create New400 Changed427 Changed570 :ref:`TableCreate` erzeugt ein neues Tabellenobjekt. .. function:: hTable = TableCreate() hTable = TableCreate(hTableOther) hTable = TableCreate(nColumns, nRows) hTable = TableCreate(smText) .. us.return **Returnwert** *hTable* ist die Zugriffsnummer (Handle) mit der auf das Tabellen-Objekt zugegriffen werden kann. Falls das Objekt nicht erzeugt werden kann ist *hTable* gleich 0. .. us.params **Parameter** .. uparam:: hTableOther Wird TableCreate() in der Form TableCreate(*hTableOther*) aufgerufen, wird eine Kopie der Tabelle *hTableOther* erzeugt. Wenn *hTableOther* gleich 0 ist, wird eine Tabelle mit Default-Konfiguration erzeugt. .. uparam:: nColumns *nRows* ist die Anzahl der Spalten der Tabelle. .. uparam:: nRows *nRows* ist die Anzahl der Zeilen der Tabelle. .. uparam:: smText *smText* ist eine Matrix von Zeichenketten. Die Tabelle wird mit soviel Zeilen und Spalten erzeugt, wie *smText* Zeilen und Spalten besitzt. Die Anzahl der Zeilen ist auf 100 und die Anzahl der Spalten auf 50 beschränkt. .. us.example **Beispiel** :: def test_1_TableCreate() { s = "[[ Versuch-Nr.:;; E-Pumpentyp:; Zyl.Kopf:;; FB-Anbau:; ]]" = StringToField(s, ";") sm = sm[2:nr(sm)-1;] sm = strtrim(sm); hDoc = DocCreate(); hPage = PageCreate(); DocAddPage(hDoc, hPage); hLayer = PageGetAllLayers(hPage); hTable = TableCreate(sm); rmAttrib = TableGetAttrib(hTable); rmAttrib = rmAttrib | (TABLE_AUTOSIZE_WIDTH | TABLE_AUTOSIZE_HEIGHT); TableSetAttrib(hTable, rmAttrib); LayerAddObjects(hLayer, hTable); PageReplot(hPage); } test_1_TableCreate() def test_2_TableCreate() { s = "[[: Versuch-Nr.:;; E-Pumpentyp:; Zyl.Kopf:;; FB-Anbau:; ]]" = StringToField(s, ";") sm = sm[2:nr(sm)-1;] sm = strtrim(sm); smName = [strempty(nr(sm), 1), sm] smName = smName[;1:nc(sm)] smName = "$" + smName + "$"; smName = strfindreplace(smName, "$$", ""); hDoc = DocCreate(); hPage = PageCreate(); DocAddPage(hDoc, hPage); hLayer = PageGetAllLayers(hPage); hTable = TableCreate(sm); rmAttrib = TableGetAttrib(hTable); rmAttrib = rmAttrib | (TABLE_AUTOSIZE_WIDTH | TABLE_AUTOSIZE_HEIGHT); TableSetAttrib(hTable, rmAttrib); TableSetName(hTable, smName, [1,1, nc(smName), nr(smName)]); TableUsePlaceholderDialog(hTable, 1) LayerAddObjects(hLayer, hTable); PageReplot(hPage); } test_2_TableCreate() def test_3_TableCreate() { s = "[[ Versuch-Nr.:;; E-Pumpentyp:; Zyl.Kopf:;; FB-Anbau:; ]]" = StringToField(s, ";") sm = sm[2:nr(sm)-1;] sm = strtrim(sm); smName = [strempty(nr(sm), 1), sm] smName = smName[;1:nc(sm)] smName2 = smName'; sm2 = sm'; for (i in 1:nc(sm)) { for (j in 1:nr(sm)) { sm2[i;nc(sm2)-j+1] = sm[j;i] smName2[i;nc(sm2)-j+1] = smName[j;i] if (smName2[i;nc(sm2)-j+1] != "") { smName2[i;nc(sm2)-j+1] = "$" + smName2[i;nc(sm2)-j+1] + "$"; } } } hDoc = DocCreate(); hPage = PageCreate(); DocAddPage(hDoc, hPage); hLayer = PageGetAllLayers(hPage); hTable = TableCreate(sm2); TableSetTextAngle(hTable, zeros(size(sm2)) + 270); rmAttrib = TableGetAttrib(hTable); rmAttrib = rmAttrib | (TABLE_AUTOSIZE_WIDTH | TABLE_AUTOSIZE_HEIGHT); TableSetAttrib(hTable, rmAttrib); TableSetName(hTable, smName2, [1,1, nc(smName2), nr(smName2)]); TableUsePlaceholderDialog(hTable, 1) LayerAddObjects(hLayer, hTable); PageReplot(hPage); } test_3_TableCreate() .. us.history **History** .. list-table:: :header-rows: 1 * - Version - Beschreibung * - 5.7.0 - *hTableOther* kann auf 0 gesetzt werden. * - 4.2.7 - Funktion kann auch mit dem Parameter *hOtherTable* aufgerufen werden (Kopier-Konstruktor). .. seealso:: :ref:`uberblick-tabellenobjekt`, :ref:`TableDestroy`, :ref:`LayerAddObjects` :sub:`id-1827292`