diff --git a/src/controllers/menuButton.js b/src/controllers/menuButton.js index 00e28da..06566f3 100644 --- a/src/controllers/menuButton.js +++ b/src/controllers/menuButton.js @@ -1710,6 +1710,7 @@ const menuButton = { luckysheetrefreshgrid(); } else if(itemvalue == "freezenRowRange"){ //选区行冻结 + if(Store.luckysheet_select_save == null || Store.luckysheet_select_save.length == 0){ if(isEditMode()){ alert(locale_freezen.noSeletionError); @@ -1720,7 +1721,11 @@ const menuButton = { return; } - + // 固定超出屏幕范围 + let rangeTop = Store.luckysheet_select_save[Store.luckysheet_select_save.length - 1].top; + if (luckysheetFreezen.freezenRealFirstRowColumn && rangeTop > $("#luckysheet-cell-main").height()) { + return tooltip.info(locale_freezen.rangeRCOverErrorTitle, locale_freezen.rangeRCOverError); + } let scrollTop = $("#luckysheet-cell-main").scrollTop(); let row_st = luckysheet_searcharray(Store.visibledatarow, scrollTop); @@ -1760,7 +1765,11 @@ const menuButton = { return; } - + // 固定超出屏幕范围 + let rangeLeft = Store.luckysheet_select_save[Store.luckysheet_select_save.length - 1].left; + if (luckysheetFreezen.freezenRealFirstRowColumn && rangeLeft > $("#luckysheet-cell-main").width()) { + return tooltip.info(locale_freezen.rangeRCOverErrorTitle, locale_freezen.rangeRCOverError); + } let scrollLeft = $("#luckysheet-cell-main").scrollLeft(); let col_st = luckysheet_searcharray(Store.visibledatacolumn, scrollLeft); @@ -1800,6 +1809,13 @@ const menuButton = { return; } + + // 固定超出屏幕范围 + let rangeTop = Store.luckysheet_select_save[Store.luckysheet_select_save.length - 1].top; + let rangeLeft = Store.luckysheet_select_save[Store.luckysheet_select_save.length - 1].left; + if (luckysheetFreezen.freezenRealFirstRowColumn && (rangeTop > $("#luckysheet-cell-main").height() || rangeLeft > $("#luckysheet-cell-main").width())) { + return tooltip.info(locale_freezen.rangeRCOverErrorTitle, locale_freezen.rangeRCOverError); + } let scrollTop = $("#luckysheet-cell-main").scrollTop(); let row_st = luckysheet_searcharray(Store.visibledatarow, scrollTop); diff --git a/src/locale/en.js b/src/locale/en.js index 3842f22..6770889 100644 --- a/src/locale/en.js +++ b/src/locale/en.js @@ -9265,7 +9265,8 @@ export default { freezenRCRange:"Freezen both range", freezenCancel:"Cancel", - noSeletionError:"No Range to be selected", + noSeletionError:"No Range to be selected", rangeRCOverErrorTitle: "Freeze reminder", + rangeRCOverError: "The frozen pane is beyond the visible range, which will lead to abnormal operation. Please reset the frozen area." }, sort:{ "asc":"Ascending ", diff --git a/src/locale/es.js b/src/locale/es.js index 9074f30..93149fd 100644 --- a/src/locale/es.js +++ b/src/locale/es.js @@ -9250,6 +9250,8 @@ export default { freezenCancel:"Cancelar", noSeletionError:"No hay rango para seleccionar", + rangeRCOverErrorTitle: "Recordatorio de congelación", + rangeRCOverError: "El panel de congelación excede el rango visible y puede causar que no funcione correctamente. Reinicie el área de congelación." }, sort:{ "asc":"Ascendente ", diff --git a/src/locale/zh.js b/src/locale/zh.js index 00cc217..11bb434 100644 --- a/src/locale/zh.js +++ b/src/locale/zh.js @@ -9493,6 +9493,8 @@ export default { freezenCancel:"取消冻结", noSeletionError:"没有选区", + rangeRCOverErrorTitle: "冻结提醒", + rangeRCOverError: "冻结窗格超过可见范围,会导致无法正常操作,请重新设置冻结区域。" }, sort:{ "asc":"升序", diff --git a/src/locale/zh_tw.js b/src/locale/zh_tw.js index 3d6c2b9..bca42d5 100644 --- a/src/locale/zh_tw.js +++ b/src/locale/zh_tw.js @@ -9486,6 +9486,8 @@ export default { freezenCancel : "取消凍結", noSeletionError: "没有選區", + rangeRCOverErrorTitle: "凍結提醒", + rangeRCOverError: "凍結窗格超過可見範圍,會導致無法正常操作,請重新設定凍結區域。" }, sort: { "asc" : "昇冪",