I have tried:
if event.source.selected == 1:
event.source.buttonBG = (0,217,0)
table = event.source.parent.getComponent("loadData").columnAttributesData
newData = system.dataset.setValue(table, 0, 27, 1)
newData1 = system.dataset.setValue(newData, 1, 27, 1)
event.source.parent.getComponent("loadData").columnAttributesData = newData1
else:
event.source.buttonBG = (238,236,232)
table = event.source.parent.getComponent("loadData").columnAttributesData
newData = system.dataset.setValue(table, 0, 27, 0)
newData1 = system.dataset.setValue(newData, 1, 27, 0)
event.source.parent.getComponent("loadData").columnAttributesData = newData1
I have added the above code in a button event handler for click. Gives the following error only when the button is “selected”, never toggles the table being editable, and freezes up part of the screen until I click the button again:
com.inductiveautomation.ignition.client.util.gui.table.SortTableModel$SorterTableCellRenderer.getTableCellRendererComponent(SortTableModel.java:554)
at javax.swing.plaf.basic.BasicTableHeaderUI.getHeaderRenderer(Unknown Source)
at javax.swing.plaf.basic.BasicTableHeaderUI.paintCell(Unknown Source)
at javax.swing.plaf.basic.BasicTableHeaderUI.paint(Unknown Source)
at javax.swing.plaf.ComponentUI.update(Unknown Source)
at javax.swing.JComponent.paintComponent(Unknown Source)
at javax.swing.JComponent.paint(Unknown Source)
at javax.swing.JComponent.paintToOffscreen(Unknown Source)
at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
at javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
at javax.swing.RepaintManager.paint(Unknown Source)
at javax.swing.JComponent._paintImmediately(Unknown Source)
at javax.swing.JComponent.paintImmediately(Unknown Source)
at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.seqPaintDirtyRegions(Unknown Source)
at javax.swing.SystemEventQueueUtilities$ComponentWorkRequest.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$000(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
All I want to do is make my entire table editable/uneditable at runtime by clicking a button. Can anyone offer any help?