モーダルにしとけばいいんだな
Option Compare Database
Option Explicit
Private Sub Form_Load()
Me.RecordSelectors = False
Me.NavigationButtons = False
SettglAllowBypasskey
End Sub
Private Sub cmdDelAllowBypassKey_Click()
On Error Resume Next
CurrentDb.Properties.Delete "AllowBypassKey"
SettglAllowBypasskey
End Sub
Private Sub tglAllowBypasskey_Click()
With Me.tglAllowBypasskey
SetBypassProperty .Value
.Caption = "AllowBypasskey = " & CBool(.Value)
End With
End Sub
Private Sub cmdClose_Click()
DoCmd.Close
End Sub
Private Sub SetBypassProperty(fBool As Boolean)
Const DB_Boolean As Long = 1
ChangeProperty "AllowBypassKey", DB_Boolean, fBool
End Sub
Private Sub SettglAllowBypasskey()
On Error GoTo ErrHnd
With Me.tglAllowBypasskey
.Value = CurrentDb.Properties("AllowBypassKey")
.Caption = "AllowBypasskey = " & .Value
End With
Exit Sub
ErrHnd:
If Err.Number = 3270 Then
Me.tglAllowBypasskey.Caption = "未設定"
Me.tglAllowBypasskey = True
Else
MsgBox Err.Number
End If
End Sub
Private Function ChangeProperty(strPropName As String, _
varPropType As Variant, _
varPropValue As Variant) As Integer
Dim dbs As Object, prp As Variant
Const conPropNotFoundError = 3270
Set dbs = CurrentDb
On Error GoTo Change_Err
dbs.Properties(strPropName) = varPropValue
ChangeProperty = True
Change_Bye:
Exit Function
Change_Err:
If Err = conPropNotFoundError Then ' プロパティが見つからないエラーの場合。
Set prp = dbs.CreateProperty(strPropName, _
varPropType, varPropValue)
dbs.Properties.Append prp
Resume Next
Else
' 不明なエラーの場合。
ChangeProperty = False
Resume Change_Bye
End If
End Function
0 件のコメント:
コメントを投稿