Tabellenspalten tauschen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
spike78
User
Beiträge: 8
Registriert: Freitag 5. November 2010, 11:14

Hallo zusammen,

ich bin neu hier und versuche gerade meine ersten Schritte mit Python. Ich habe bereits ausführlich in der Suche nach einer Lösung meines Problems gesucht, aber leider nichts gefunden. Daher nicht böse sein, wenn ich euch frag.

Also zu meinem Problem.

Ich habe eine Tabelle mit 2 Spalten. Nun würde ich gerne mittels Python beide Spalten vertauschen. Könnte mir dabei jemand eine Hilfestellung geben, wie man das mit Python macht?

Danke und Gruß

Spike
Benutzeravatar
lutz.horn
User
Beiträge: 205
Registriert: Dienstag 8. November 2005, 12:57
Wohnort: Pforzheim

Poste doch mal Deinen Code.
https://www.xing.com/go/invite/18513630.6a91d4
spike78
User
Beiträge: 8
Registriert: Freitag 5. November 2010, 11:14

Soweit hab ich mein Script:

Code: Alles auswählen

from javax.swing import *
from com.xxx.ppm.client.user.components import *

com = rc.getComponent("DropTarget_client.dnd.ZDropTarget3")
table= com.getModel()

print dir(model)
print model.getColumnName(0)
print model.getColumn('Prozesskennzeichnung')
Benutzeravatar
hendrikS
User
Beiträge: 420
Registriert: Mittwoch 24. Dezember 2008, 22:44
Wohnort: Leipzig

Ohne, das ich weiss ob es Dein Problem löst, sollte reverse zwei Spalten tauschen.
spike78
User
Beiträge: 8
Registriert: Freitag 5. November 2010, 11:14

Mein Tableobjekt hat keine reverse Methode.

Hier die Methoden die ich bekomme mit print dir(table):

['ATIDIndex', 'KIParamSet', '__init__', 'addRow', 'addTableModelListener', 'altHyperlinkText', 'class', 'columnCount', 'columnWidthMode', 'dataSet', 'dataSetContainer', 'empty', 'equals', 'filterData', 'findColumn', 'fireTableCellUpdated', 'fireTableChanged', 'fireTableDataChanged', 'fireTableRowsDeleted', 'fireTableRowsInserted', 'fireTableRowsUpdated', 'fireTableStructureChanged', 'getATIDByEPKID', 'getATIDIndex', 'getAlignment', 'getAltHyperlinkText', 'getClass', 'getColData', 'getColSortOrder', 'getColWidth', 'getColumn', 'getColumnClass', 'getColumnCount', 'getColumnName', 'getColumnWidthMode', 'getDataCol', 'getDataContent', 'getDataSet', 'getDataSetContainer', 'getEpkID', 'getFilteredValue', 'getFormat', 'getHeaderCellList', 'getIdentifier', 'getKIParamSet', 'getListeners', 'getModelIndex', 'getNavParamSet', 'getResultCriterion', 'getResultCriterionList', 'getRowCount', 'getRowList', 'getSelectedIndex', 'getSelectedIndices', 'getSortAscending', 'getSortColumn', 'getSortOrder', 'getSortedColumnName', 'getTableCellAt', 'getTableModelListeners', 'getThresholdConfig', 'getThresholdConfigs', 'getTotalColumnCount', 'getTotalRowCount', 'getValueAt', 'hasFilterData', 'hashCode', 'headerCellList', 'insertHeader', 'insertResultCriterion', 'instanceFilterData', 'isCellEditable', 'isEmpty', 'isFiltered', 'navParamSet', 'notify', 'notifyAll', 'removeRow', 'removeRows', 'removeTableModelListener', 'replaceComplexSteps', 'resultCriterionList', 'rowCount', 'rowList', 'setData', 'setFilterData', 'setInstanceFilterData', 'setSortAscending', 'setSortColumn', 'setSortOrder', 'setValueAt', 'showFilteredData', 'sort', 'sortAscending', 'sortColumn', 'sortColumns', 'sortedColumnName', 'tableChanged', 'tableModelListener', 'tableModelListeners', 'thresholdConfigs', 'toString', 'toXMLElement', 'totalColumnCount', 'totalRowCount', 'updateParams', 'wait']
0x1cedd1ce
User
Beiträge: 31
Registriert: Sonntag 3. Oktober 2010, 12:21

Du könntest die Daten der beiden Spalten auslesen und zwischenspeichern und dann in die jeweils andere Spalte schreiben. Wahrscheinlich kannst du zum schreiben SetData oder SetValueAt benutzen und zum lesen GetColData oder GetValueAt. Hab das aber noch nie selbst genutz, daher sind das nur Vermutungen
spike78
User
Beiträge: 8
Registriert: Freitag 5. November 2010, 11:14

Hi,

habs hinbekommen.

table.moveColumn(0, 1)


Danke und Grüße
Antworten