Changeset 24049 for lang

Show
Ignore:
Timestamp:
11/18/08 11:08:17 (6 years ago)
Author:
kiri_feather
Message:

DisplayIndex退避(DrawItem高速化)

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • lang/vb2005/Tween/Tween/Tween.vb

    r24021 r24049  
    100100    Private _brsForeColorOWL As SolidBrush 
    101101    Private sf As New StringFormat() 
     102    Private _columnIdx As Integer   'ListviewのDisplayIndex退避用(DrawItemで使用) 
    102103 
    103104#If DEBUG Then 
     
    34473448            AddHandler myTab.listCustom.Scrolled, AddressOf Mylist_Scrolled 
    34483449            AddHandler myTab.listCustom.MouseClick, AddressOf MyList_MouseDown 
     3450            AddHandler myTab.listCustom.ColumnReordered, AddressOf MyList_ColumnReordered 
    34493451 
    34503452            myTab.colHd1.Text = "" 
     
    34863488                myTab.listCustom.Columns(4).DisplayIndex = _section.DisplayIndex5 
    34873489            End If 
    3488  
     3490            _columnIdx = myTab.colHd1.DisplayIndex 
    34893491            myTab.tabPage.ResumeLayout(False) 
    34903492            'End If 
     
    35813583        AddHandler myTab.listCustom.Scrolled, AddressOf Mylist_Scrolled 
    35823584        AddHandler myTab.listCustom.MouseClick, AddressOf MyList_MouseDown 
     3585        AddHandler myTab.listCustom.ColumnReordered, AddressOf MyList_ColumnReordered 
    35833586 
    35843587        myTab.colHd1.Text = "" 
     
    38803883                Dim wd As Integer 
    38813884                Dim wd2 As Integer 
    3882                 Dim idx As Integer 
     3885                Dim idx As Integer = _columnIdx     '手抜き 
    38833886 
    38843887                For cnt = 0 To 4 
    38853888                    If e.Item.ListView.Columns(cnt).Text = "" Then 
    3886                         idx = MyList.Columns(cnt).DisplayIndex 
     3889                        'idx = MyList.Columns(cnt).DisplayIndex 
    38873890                        wd2 = MyList.Columns(cnt).Width - 2 
    38883891                        Exit For 
     
    71697172        MenuStrip1.Tag = Nothing 
    71707173    End Sub 
     7174 
     7175    Private Sub MyList_ColumnReordered(ByVal sender As System.Object, ByVal e As ColumnReorderedEventArgs) 
     7176        If e.Header.Text = "" Then 
     7177            _columnIdx = e.NewDisplayIndex 
     7178        Else 
     7179            Dim MyList As DetailsListView = DirectCast(sender, DetailsListView) 
     7180            Dim cIdx As Integer = 0 
     7181            For Each clm As ColumnHeader In MyList.Columns 
     7182                If clm.Text = "" Then 
     7183                    cIdx = clm.DisplayIndex 
     7184                    If cIdx >= e.NewDisplayIndex AndAlso cIdx < e.OldDisplayIndex Then 
     7185                        _columnIdx = cIdx + 1 
     7186                    ElseIf cIdx <= e.NewDisplayIndex AndAlso cIdx > e.OldDisplayIndex Then 
     7187                        _columnIdx = cIdx - 1 
     7188                    End If 
     7189                End If 
     7190                Exit For 
     7191            Next 
     7192        End If 
     7193    End Sub 
    71717194End Class 
    71727195