Example #1
0
        /// <summary>
        /// フォーカス設定処理
        /// </summary>
        /// <param name="pspdObj">スプレッドシートインスタンス</param>
        /// <param name="pintRow">行位置</param>
        /// <param name="pintCol">列位置</param>
        /// <returns>true:正常終了 false:エラー</returns>
        /// <remark>
        /// フォーカス設定を行います
        /// </remark>
        public static bool SetCellFocus(FpSpread pspdObj, int pintRow, int pintCol)
        {
            try
            {
                pspdObj.Sheets[0].SetActiveCell(pintRow, pintCol);        // アクティブセル

                // 行:セルまたは行の位置を近い方の端
                // 列:セルまたは列の位置を近い方の端
                //  ※ Nearestパラメータは指定したセルが表示されていない場合のみ、表示中のセルを変更または移動します。
                if (pintRow < pspdObj.GetViewportTopRow(0))
                {
                    pspdObj.ShowActiveCell(VerticalPosition.Top, HorizontalPosition.Nearest);
                }
                else if (pspdObj.GetViewportBottomRow(0) < pintRow)
                {
                    pspdObj.ShowActiveCell(VerticalPosition.Bottom, HorizontalPosition.Nearest);
                }

                pspdObj.Focus();

                return(true);
            }
            catch (Exception)
            {
                return(false);
            }
        }
Example #2
0
 ///<summary>
 /// 设定单元格的焦点  参数:表格对象,单元格行号,单元格列号
 ///</summary>
 public static void SpdSetFocus(FpSpread ospd, int orow, int ocol)
 {
     if (orow >= 0 && ocol >= 0)
     {
         ospd.Focus();
         //ospd.ActiveSheet.SetActiveCell(orow,ocol,false);
         ospd.ActiveSheet.ActiveRowIndex    = orow;
         ospd.ActiveSheet.ActiveColumnIndex = ocol;
     }
 }
Example #3
0
 ///<summary> 
 /// 设定单元格的焦点  参数:表格对象,单元格行号,单元格列号
 ///</summary>
 public static void SpdSetFocus(FpSpread ospd, int orow, int ocol)
 {
     if (orow >= 0 && ocol >= 0)
     {
         ospd.Focus();
         //ospd.ActiveSheet.SetActiveCell(orow,ocol,false);
         ospd.ActiveSheet.ActiveRowIndex = orow;
         ospd.ActiveSheet.ActiveColumnIndex = ocol;
     }
 }