cómo utilizar matriz hbox zk?
-
04-10-2019 - |
Pregunta
No estoy seguro de cómo utilizar una matriz de ZK HBOX. Estoy tratando de crear una matriz de componentes ZK HBOX y usarla dentro de un bloque de.
void createRow(Component container, final Node fieldNode, FieldCreator [] fieldDescription) {
final Vbox fieldsRows = new Vbox();
final Hbox fieldsRow = new Hbox();
final Hbox[] fieldBox;
int i=0;
for (FieldCreator fieldDesc : fieldDescription) {
fieldBox[i] = new Hbox();
fieldDesc.createField(fieldNode, fieldBox[i]);
i++;
}
fieldsRow.appendChild(fieldBox[]);
Button removeFieldButton = new Button(Messages.getString("MXFC_removeFieldButton")); //$NON-NLS-1$
fieldsRow.appendChild(removeFieldButton);
fieldsRows.appendChild(fieldsRow);
removeFieldButton.addEventListener(Events.ON_CLICK, new EventListener() {
public void onEvent(Event event) throws Exception {
fieldNode.getParentNode().removeChild(fieldNode);
fieldBox[].setParent(null);
}
});
container.appendChild(fieldsRows);
}
El código anterior es incorrecta. El compilador lanza el error: "Error de sintaxis en el símbolo '[', Expresión espera después de esta señal." en las líneas:
fieldsRow.appendChild(fieldBox[]);
fieldBox[].setParent(null);
¿Cómo puedo solucionar esto?
Gracias, Sony
Solución
Sony,
Hay algunos errores de sintaxis en el código Java.
- fieldBox [] no significa nada aquí en Java.
- Es necesario inicializar los fieldBox antes de asignarle valor a sus entradas.
Para solucionar estos problemas que tenemos que entender lo que quiere lograr en este trozo de código. Basado en mi suposición, usted debe
-
inicializar fieldBox.
Hbox[] fieldBox = new Hbox[fieldDescription.length];
-
iterar a través de columnas como anexar / desconexión hijos de la fila.
for(int i=0; i<fieldBox.length; i++) fieldsRow.appendChild(fieldBox[i]);
for(int i=0; i<fieldBox.length; i++) fieldBox[i].setParent(null);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow