把StringGrid.Option中的goRowSelect选中,并且ColCount比较多时,如果水平滚动条移动到右边,然后点击表格,水平滚动条就会自己回到左边,导致右边的数据无法编辑了,不知道有什么解决的办法吗?

解决方案 »

  1.   

    固定列呢
     ●固定行及固定列:   
      StringGrid.FixedCols:=固定行之數;   
      StringGrid.FixedRows:=固定列之數;   
      StringGrid.   FixedColor:=固定行列之顏色;   
      StringGrid.Color:=資料區之顏色;   
        
      ●資料行列之寬高度:   
      StringGrid.DefaultColWidth:=內定全部之寬度;   
      StringGrid.DefaultRowHeight:=內定全部之高度;   
      StringGrid.ColWidths[Index:Longint]:=某一行整行之寬度;     
      StringGrid.RowHeights[Index:Longint]:=某一列整列之高度;   
        
      ●資料區(CELL)指定:   
      將某一行列停在畫面之資料區最左上角:   
      StringGrid.LeftCol:=某一行號;   
      StringGrid.TopRow:=某一列號;   
      焦點移至某一格(CELL)內:     
      StringGrid.Row:=?;   
      StringGrid.Col:=?;   
      設定資料行列數:(包含固定行、列亦算在內)     
      StringGrid.RowCount:=?;   
      StringGrid.ColCount:=?;   
      寫一字串至某一格(CELL)內:   
      StringGrid.Cells[Col值   ,   Row值]:=字串;   
      判斷滑鼠指標目前在哪一格(CELL)範圍內:   
      在StringGrid之Mouse事件中(UP,DOWN或MOVE)下:   
      VAR   C   ,   R   :   Longint;   
      Begin   
      StringGrid.MouseToCell(X,Y,C,R);   {X,Y由MOUSE事件傳入}   
      {取回   C   ,   R   即為目前之Col   ,   Row值   }     
      ......   
        
      ●StringGrid之Options屬性:   
      若要於程式執行中開啟或關閉Options某一功能如   ‘goTABS’   
      開:   StringGrid.Options:=   StringGrid.Options   +   [goTABS];   
      關:   StringGrid.Options:=   StringGrid.Options   -   [goTABS];   
        
        
      goFixedHorzLine   固定列間之水平線   
      goFixedVertLine   固定行間之垂直線   
      goHorzLine   資料格間水平線   
      goVertLine   資料格間垂直線   
      goRangeSelect   滑鼠可多重選擇   
      goDrawFocusSelected   多重選擇時,第一資料項反白   
      goRowSizing   滑鼠可改變列高   
      goColSizing   滑鼠可改變行寬   
      goRowMoving   滑鼠可搬資料列   
      goColMoving   滑鼠可搬資料行   
      goEditing   可編輯(與滑鼠可多重選擇互斥)   
      goAlwaysShowEditor   須有goEditing,不用按F4或ENTER即有等待輸入游標   
      goTabs   允許TAB及Shift-TAB移動游標   
      goRowSelect   用滑鼠點一下可選取整列(亦與滑鼠可多重選擇互斥)   
      goThumbTracking   捲軸動時GRID跟著動,否則捲軸動完放開,GRID才動