| Увеличение быстродействия при заполнении какого-либо элемента данными |
|
Этот пример покажет, как можно запретить какой-либо области формы (окна) перекрашиваться. Данный пример ускоряет заполнение элементов ListBox или ListView большим количеством элементов. Разместите на форме элемент CommandButton и элемент CheckBox. Скопируйте и вставьте в события формы следующий код, запустите проект на выполнение. Нажмите на кнопку, запомните результат, затем поставьте галочку в элемент CheckBox и снова нажмите на кнопку. Надеюсь, вы заметили разницу?
Private Declare Function LockWindowUpdate Lib "user32" (ByVal hwndLock As Long) As Long Private Declare Function timeGetTime Lib "winmm.dll" () As Long Private Sub Command1_Click() Dim i As Long Dim lTIme As Long lTIme = timeGetTime() If (Check1.Value = Checked) Then LockWindowUpdate List1.hWnd End If List1.Clear For i = 1 To 10000 List1.AddItem "Test " & i Next i If (Check1.Value = Checked) Then LockWindowUpdate 0 List1.Refresh End If MsgBox "Time: " & timeGetTime - lTIme End Sub
Источник: http://www.vbnet.ru/ |