【スクリプト】 シートのスクロール位置を調整したい

文書番号 : 21812     文書種別 : 使用方法     最終更新日 : 2006/06/23
文書を印刷する
対象製品
SPREAD for .NET 2.5J Web Forms Edition
詳細
アプリケーション側にて下記のクライアント側スクリプトを実行することで、特定のセルが左上に表示されるようシートをスクロールすることが可能です。
次のサンプルコードではWebフォームにSPREADとボタンを配置した状態でボタンを押すとシートを5行目までスクロールした状態で表示します。

【VB サンプルコード】
-------------------------------
Webフォームクラス
-------------------------------
  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim scriptString As String = "<script language=javascript>function window.onload(){SetCellActive(4,0);}</script>"
    RegisterClientScriptBlock("clientScript", scriptString)
    '' VS2005をご使用のお客様は上記1行のコードをコメントアウトし、以下のコメントを外してください。
    ''Dim instance As ClientScriptManager = Page.ClientScript
    ''instance.RegisterClientScriptBlock(Me.GetType(), "clientScript", scriptString)
  End Sub

-------------------------------
クライアント側スクリプト
-------------------------------
<script language="javascript">
 function SetCellActive(row,col){
  var spread=document.all("FpSpread1");
  spread.SetActiveCell(row,col);
  var cell = spread.GetCellByRowCol(row,col);
  var rowHeader = spread.all(spread.id+"_rowHeader");     
  var colHeader = spread.all(spread.id+"_colHeader");
  var view = spread.all(spread.id+"_view");

  if(view==null)
   return; 

  view.scrollTop = cell.offsetTop;
  view.scrollLeft = cell.offsetLeft;

  if (rowHeader!=null) {
   rowHeader.scrollTop = view.scrollTop;
  }
  if (colHeader!=null) {
   colHeader.scrollLeft= view.scrollLeft;
  }
 }
</script>


【C# サンプルコード】
------------------------------
Webフォームクラス
------------------------------
    private void Button1_Click(object sender, System.EventArgs e)
    {
      string scriptString="<script language=javascript>function window.onload(){SetCellActive(4,0);}</script>";
      RegisterClientScriptBlock("clientScript",scriptString);
      // VS2005をご使用のお客様は上記1行のコードをコメントアウトし、以下のコメントを外してください。
      //ClientScriptManager instance = Page.ClientScript;
      //instance.RegisterClientScriptBlock(this.GetType(), "clientScript", scriptString);
    }
------------------------------
クライアント側スクリプト
------------------------------
 VB.NET 版サンプルコードと同様
キーワード
外観 クライアント側スクリプト

この文書は、以前は次のFAQ IDで公開されていました : 9136