Редактор электронных таблиц — работа с Cells
Оглавление
- Выбор Cell
- Cell выбор обратного вызова
- Удалить Cell
- WorksheetView.removeCellShiftUp
- WorksheetView.removeCellShiftLeft
- Очистить Cell WorksheetView.clearCurrentCellFormatting
- WorksheetView.clearCurrentCellContents
- WorksheetView.clearCurrentCell
Выбор Cell
Используйте указатель мыши, чтобы указать на ячейку. Щелкните ячейку, чтобы выбрать ее. Выбранная ячейка выделяется жирным прямоугольником.
Как это работает?
Когда пользователь щелкает ячейку, событие обрабатывается функцией обратного вызова JavaScript, которая прикреплена к компоненту Primefaces.
Cell выбор обратного вызова
var columnId = $(this).find('.ui-cell-editor-input input').attr('data-columnid');
var rowId = $(this).find('.ui-cell-editor-input input').attr('data-rowid');
var clientId = $(this).find('.ui-cell-editor').attr('id');
PF('currentColumnIdValue').jq.val(columnId);
PF('currentRowIdValue').jq.val(rowId);
PF('currentCellClientIdValue').jq.val(clientId);
if ($(this).find('.ui-cell-editor-output div').hasClass('b')) {
PF('boldOptionButton').check();
} else {
PF('boldOptionButton').uncheck();
}
if ($(this).find('.ui-cell-editor-output div').hasClass('i')) {
PF('italicOptionButton').check();
} else {
PF('italicOptionButton').uncheck();
}
if ($(this).find('.ui-cell-editor-output div').hasClass('u')) {
PF('underlineOptionButton').check();
} else {
PF('underlineOptionButton').uncheck();
}
PF('fontOptionSelector').selectValue($(this).find('.ui-cell-editor-output div').css('font-family').slice(1, -1));
PF('fontSizeOptionSelector').selectValue($(this).find('.ui-cell-editor-output div')[0].style.fontSize.replace('pt', ''));
['al', 'ac', 'ar', 'aj'].forEach(function(v) {
if ($(this).find('.ui-cell-editor-output div').hasClass(v)) {
// TODO: save the value to PF('alignOptionSelector');
}
});
PF('currentColumnWidthValue').jq.val($(this).width());
PF('currentRowHeightValue').jq.val($(this).height());
$($this.selectedCell).removeClass('sheet-selected-cell');
$(this).addClass('sheet-selected-cell');
$this.selectedCell = this;
Удалить Cell
Чтобы удалить ячейку:
- Нажмите на ячейку, которую хотите удалить.
- Переключить наВкладка Формат.
- НажмитеУдалить Cell кнопка.
- выберитеСдвиг Cells Вверх или жеСдвиг Cells Левый кнопка.
Редактор удалит выбранную ячейку. Соседние ячейки будут автоматически сдвигаться по горизонтали или по вертикали, чтобы отрегулировать пространство.
Как это работает?
Сдвиг Cells Вверх иСдвиг Cells Левый обрабатываются внутренним компонентом JSFВид рабочего листа. Исходный код соответствующих методов выглядит следующим образом:
WorksheetView.removeCellShiftUp
public void removeCellShiftUp() {
if (!isLoaded()) {
return;
}
getAsposeWorksheet().getCells().deleteRange(currentRowId, currentColumnId, currentRowId, currentColumnId, com.aspose.cells.ShiftType.UP);
purge();
}
WorksheetView.removeCellShiftLeft
public void removeCellShiftLeft() {
if (!isLoaded()) {
return;
}
getAsposeWorksheet().getCells().deleteRange(currentRowId, currentColumnId, currentRowId, currentColumnId, com.aspose.cells.ShiftType.LEFT);
purge();
}
Очистить Cell
Чтобы очистить ячейку:
- Нажмите на ячейку, которую хотите очистить.
- Переключить наВкладка Формат.
- НажмитеОчистить Cell кнопка.
- выберитеФорматы, Содержание или жеОбе вариант.
Редактор очистит выбранную ячейку.
Как это работает?
Форматы, Содержание иОбе обрабатываются внутренним компонентом JSFВид рабочего листа. Исходный код соответствующих методов выглядит следующим образом:
WorksheetView.clearCurrentCellFormatting
public void clearCurrentCellFormatting() {
if (!isLoaded()) {
return;
}
getAsposeWorksheet().getCells().clearFormats(currentRowId, currentColumnId, currentRowId, currentColumnId);
reloadCell(currentColumnId, currentRowId);
RequestContext.getCurrentInstance().update(currentCellClientId);
}
WorksheetView.clearCurrentCellContents
public void clearCurrentCellContents() {
if (!isLoaded()) {
return;
}
getAsposeWorksheet().getCells().clearContents(currentRowId, currentColumnId, currentRowId, currentColumnId);
reloadCell(currentColumnId, currentRowId);
RequestContext.getCurrentInstance().update(currentCellClientId);
}
WorksheetView.clearCurrentCell
public void clearCurrentCell() {
if (!isLoaded()) {
return;
}
getAsposeWorksheet().getCells().clearRange(currentRowId, currentColumnId, currentRowId, currentColumnId);
reloadCell(currentColumnId, currentRowId);
RequestContext.getCurrentInstance().update(currentCellClientId);
}