Mostrando entradas con la etiqueta Framework Swing.. Mostrar todas las entradas
Mostrando entradas con la etiqueta Framework Swing.. Mostrar todas las entradas

lunes, 12 de julio de 2010

Agregar Panel de color

private JLabel assignedBackground;
private Color elegido;
private Color original;

/*............................*/

private void agregarPanelColor(){
final JPanel colorPanel = new JPanel();
colorPanel.add(new JLabel("Color asignado"));
assignedBackground = new JLabel();
assignedBackground.setOpaque(true);
assignedBackground.setPreferredSize(new Dimension(20, 15));
original = assignedBackground.getBackground();
colorPanel.add(assignedBackground);

JButton colorButton = new JButton("Seleccionar..");
colorButton.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent arg0) {
Color actual = null;
if (elegido != null) {
actual = elegido;
} else if (entidad != null && entidad.getColor() != null) {
actual = new Color(Integer.parseInt(entidad.getColor(), 16));
}
elegido = JColorChooser.showDialog(EstadoComandoWindows.this, "Seleccionar el color para el estado.", actual);
assignedBackground.setBackground(elegido);
colorPanel.repaint();
}

});
colorPanel.add(colorButton);
componentes.add(colorPanel);
}

@Override
public EstadoComanda getEntidad() {
EstadoComanda e = super.getEntidad();
if (elegido == null) {
e.setColor(null);
} else {
e.setColor(ColorUtil.toHexString(elegido));
}
return e;
}

@Override
public void setEntidad(EstadoComanda entidad) {
super.setEntidad(entidad);
if(entidad != null){
if (entidad.getJavaColor() != null) {
elegido = entidad.getJavaColor();
assignedBackground.setBackground(elegido);
} else {
elegido = null;
assignedBackground.setBackground(original);
}
}
}

lunes, 31 de mayo de 2010

agregar boton derecho a una tabla

tabla.getTabla().getContextMenu().add(new AbstractAction("Editar Cuota"){

public void actionPerformed(ActionEvent e) {
//mostrarle que se va a mover a tal numero y con fecha de vencimiento tal
if (tabla.getTabla().getTabla().getSelectedRow() != -1) {
CuotaPrestamo cuota =(CuotaPrestamo)tabla.getValor();
System.out.println("*** cuota.getNumero()" + cuota.getNumero());
System.out.println("*** cuota.getFecha()" + cuota.getFecha());
CuotaPrestamo cuotaConsulta = PrestamoManager.getInstance().getControl().consultarProximaCuota(cuota);
int r = SwingAlert.mostrarPreguntaSiNo("Se va a mover la cuota nro. " +cuota.getNumero()
+ " al nro. "+ cuotaConsulta .getNumero() +" con frcha de vencimiento " + cuotaConsulta .getFecha(),ListadoCobranzaWindows.this);

if (r == JOptionPane.YES_OPTION) {
PrestamoManager.getInstance().getControl().editarCuota(cuota);
}
}
}

});

viernes, 28 de mayo de 2010

Hacer algunos campos editables de una tabla

modelo = new ListTableModel>(DtoRendicionCreditoSinCuotas.class){

@Override
public boolean isCellEditable(int rowIndex, int columnIndex) {
return (columnIndex == 8 || columnIndex == 9);
}

@Override
public void setValueAt(Object value, int rowIndex, int columnIndex) {
if(columnIndex == 8){
((DtoRendicionCreditoSinCuotas)get(rowIndex)).setCantidadPagadas(((Number)value).intValue());
}
if(columnIndex == 9){
((DtoRendicionCreditoSinCuotas)get(rowIndex)).setMontoPagado(((Number)value).doubleValue());
}
}


};

viernes, 7 de mayo de 2010

agregar una tarea en una ventana

activities = new SwingABMTable("Activities", "Activity", modelo, new ActivityWindows()) {

@Override
public boolean aceptar(EntityWindows w) {
boolean s = super.aceptar(w);
if (w.getAccion() != EntityWindows.ACCION_DETALLES) {
try {
System.out.println("entro 22222****");
TripManager.getInstance().getControl().modificarTrip(ItineraryPanel.this.tripWindows.getEntidad());
} catch (Exception ex) {
ManejadorExcepciones.manejarExcepcion(ex);
}
}
return s;
}

};

Formato de hora para una fila de una columna

CellRendererFecha renderer = new CellRendererFecha() {

@Override
public void setValue(Object value) {
if (value != null) {
setText(DateFormatter.getHora((Date) value));
setHorizontalAlignment(JLabel.CENTER);
} else {
setText(null);
}

}


};


activities.getTabla().getTabla().getColumnModel().getColumn(0).setCellRenderer(renderer);

viernes, 29 de enero de 2010

Pintar celda de una tabla segun su valo

  1. Hago una clase que extienda de DefaultTableCellRenderer
public class EstadoPolizaCellRenderer extends DefaultTableCellRenderer {

private static Color original;

public EstadoPolizaCellRenderer() {
//obtengo el valor por defecto del color de la letra
original = new JLabel().getForeground();
}

@Override
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) {
// value trae el valor .. la columna era del tipo de la enumeracion
JLabel componente = (JLabel) super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column); // llama al metodo setvalue adentro
setCellColor(componente,(EstadoPropuesta) value);
return componente;
}

@Override
protected void setValue(Object value) {
if (value instanceof EstadoPropuesta) {
setText(((EstadoPropuesta) value).getNombre());
} else {
setText(null);
}
}

private void setCellColor(JLabel componente, EstadoPropuesta valor) {
if (valor == EstadoPropuesta.ANULADA) {
componente.setForeground(Color.RED);
} else if (valor == EstadoPropuesta.CARGADA ||
valor == EstadoPropuesta.EMISION) {
componente.setForeground(Color.BLUE);
} else {
componente.setForeground(original);
}
}

}

2. en la tabla setearle el render que creamos, es por tipo de columna
tabla = new SwingTablePanel>(pagedModel) {

@Override
protected SwingTable createSwingTable(String titulo, SwingTableModel> modelo) {
SwingTable tablaLocal = super.createSwingTable(titulo, modelo);
tablaLocal.getTabla().setDefaultRenderer(EstadoPropuesta.class, new EstadoPolizaCellRenderer());
return tablaLocal;
}
}

martes, 12 de enero de 2010

Swing Select

localidad = new SwingSelect("Localidad","nombre",Localidad.class,1,new SwingSelectFilter() {

public List buscar(String texto) {
return LocalidadManager.getControl().listarLocalidades(texto);
}
});

localidad.addColumn(new Columna("Código", "codigo",int.class));
add(localidad);