функция для определения ширины скролбара формы
Автор АлексейЕ   
20.12.2006 г.
Вот маленькая функция, котороя может пригодиться в работе, когда необходимо определить ширину скрола.
Старался избежать АПИ. Обычно вызываю на событии открытие, тогда мельтешение не заметно.
Но если требуется определить в уже открытой форме, то нужно раскомментировать строки с .Painting =

'---------------------------------------------------------------------------------------
' Procedure : GetScrollBarsWidth
' DateTime  : 22.06.2006 17:36
' Author    : avegorov
' Purpose   : Определяет ширину скрола
'---------------------------------------------------------------------------------------
Public Function GetScrollBarsWidth(frm As Form) As Integer
Dim bytScrollBars As Byte

   On Error GoTo GetScrollBarsWidth_Error

    With frm
'        .Painting = False
        bytScrollBars = .ScrollBars
        .ScrollBars = 2
        GetScrollBarsWidth = .InsideWidth
        .ScrollBars = 0
        GetScrollBarsWidth = .InsideWidth - GetScrollBarsWidth
        .ScrollBars = bytScrollBars
'        .Painting = True
    End With

   On Error GoTo 0
   Exit Function

GetScrollBarsWidth_Error:
    frm.Painting = True
    MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure GetScrollBarsWidth of Module Utils"
End Function


Просмотров: 8023

  Коментарии (1)
 1 Написал(а) Сергей, в 06:52 19.07.2012
Спасибо большое! То что нужно!

Добавить коментарий
Имя:
E-mail
Коментарий:



Код:* Code