def run(self): frame = JFrame('JSpinnerDemo', layout=FlowLayout(), defaultCloseOperation=JFrame.EXIT_ON_CLOSE) daysOfWeek = [dow for dow in DFS().getWeekdays() if dow] width = max([len(dow) for dow in daysOfWeek]) spinner = JSpinner(SpinnerListModel(daysOfWeek)) spinner.getEditor().getTextField().setColumns(width) frame.add(spinner) frame.pack() frame.setVisible(1)
class sRenderer( DefaultTableCellRenderer ) : #--------------------------------------------------------------------------- # Name: __init__() # Role: Constructor #--------------------------------------------------------------------------- def __init__( self ) : self.DTCR = DefaultTableCellRenderer() self.spinner = JSpinner( SpinnerListModel( choices ) ) #--------------------------------------------------------------------------- # Name: getTableCellRendererComponent() # Role: Return the component containing the rendered value # Note: Called frequently, don't create a new component each time #--------------------------------------------------------------------------- def getTableCellRendererComponent( self, table, # table containing cell being rendered value, # Object - value being rendered isSelected, # boolean - Is value selected? hasFocus, # boolean - Does this cell have focus? row, # int - Row # (0..N) col # int - Col # (0..N) ) : comp = self.DTCR.getTableCellRendererComponent( table, value, isSelected, hasFocus, row, col ) # print '[ %d, %d ] : %s on %s' % ( row, col, comp.getForeground(), comp.getBackground() ) tf = self.spinner.getEditor().getTextField() tf.setForeground( comp.getForeground() ) tf.setBackground( comp.getBackground() ) self.spinner.setValue( value ) return self.spinner