Читайте также:
|
|
VB4 16/32, VB5
Level: Intermediate
Для слежения за последовательностью версий, используйте эту процедуру, если Вы используете номер версии:
Public Function GetMyVersion() As String
' конвертирует номер версии в нечто вроде"1.02.0001"
Static strMyVer As String
If strMyVer = "" Then
strMyVer = Trim$(Str$(App.Major)) & "." & _
Format$(App.Minor, "##00") _
& "." Format$(App.Revision, "000")
End If
GetMyVersion = strMyVer
End Function
ВЫРАВНИВАНИЕ КОНТРОЛОВ ПО ПРАВОМУ КРАЮ
VB3, VB4 16/32, VB5
Level: Beginning
При создании форм с нефиксированными размерами, я предпочитаю помещать все контролы в правый нижний и правый верхний углы. Например, на формах, где вводятся данные, я ставлю кнопки навигации по записям в левую нижнюю часть формы вместе с кнопками Add New Record, Delete Record, и Find Record. В нижнем правом углу я ставлю кнопки print preview и закрытия формы. Поместите эту процедуру в модуль или general declarations формы. Параметром Offset Вы можете изменять дистанцию от правого края формы, то есть Вы можете выравнивать по правому краю Ваши контролы.
Sub ButtonRight(X As Control, _
Frm As Form, Offset as Integer)
X.Left = Frm.ScaleWidth - _
X.Width - Offset
End Sub
Поместите два command buttonа на форму. В событии Form_Resize, добавьте примерно такой код:
Private Sub Form_Resize()
ButtonRight Command1, Me, 0
ButtonRight Command2, Me, _
Command1.Width
End Sub
VAL() НЕ РАБОТАЕТ НА ФОРМАТИРОВАННЫХ ЧИСЛАХ
VB3, VB4 16/32, VB5
Level: Intermediate
Осторожнее с функцией Val(). Она некорректно распознает форматированные числа. Используйте вместо этого CInt(), CDbl().
FormattedString = Format(1250, _
"General")
' = "1,250.00"
Debug.Print Val(FormattedString)
' напечатает 1!
Debug.Print cDbl(FormattedString)
' напечатает 1250
CМЫШЛЕНЫЙ ГЕНЕРАТОР ID
VB3, VB4 16/32, VB5
Level: Intermediate
Я написал генератор для создания уникальных номиров, типа номера акаунта, или ID в вашеи приложении. Я использую это вместе с фенкцией CheckForValid, например CheckForValid вернет True для номера "203931." И вернет False для "209331."
Function CheckForValid(Num As Long) _
As Boolean
' Check for valid number
Result = Num Mod 13
If Result <> 0 Then
CheckForValid = False
' if false then the number is wrong
Else
CheckForValid = True
'if true the number is OK
End If
End Function
Function Generate(Num As Long) As Long
'Generates the successor of a valid
'number
If CheckForValid(Num) Then
Generate = Num + 13
'if valid Generate
Else
Generate = -1
' Otherwise return -1
End If
End Function
Дата добавления: 2015-08-21; просмотров: 48 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
ВЫБРАТЬ ВСЕ ФАЙЛЫ ПО МАСКЕ В ПОДДЕРЕВЕ КАТАЛОГОВ | | | Бартоломео Кристофори» Санкт-Петербург 2015 |