code FRMLOGIN:
Private Sub cmdOK_Click()
'ToDo: create test for correct password
'check for correct password
If txtPassword.Text = (rsADO!Value) And txtUsername.Text = (rsUserADO!Value) Then
OK = True
'frmLogin.Hide
Unload Me
Else
MsgBox "Invalid Password, try again.", , "Login"
txtPassword.SetFocus
txtPassword.SelStart = 0
txtPassword.SelLength = Len(txtPassword.Text)
txtPassword.Text = ""
End If
End Sub
Private Sub cmdCancel_Click()
'frmLogin.Hide
'OK = False
'Unload Me.WindowType = [1]
'Object.WindowType[ = nType]
'.WindowsType[1]
Unload Me
End Sub
hier de code frmMAIN:
'Calibration
Private Sub mnuSettingsCalibration_Click()
frmLogin.Show vbModal, Me
If frmLogin.cmdCancel = False Then
'MsgBox ("Cancel")
frmMain.Show
Dim m As New frmMain
m.Show vbModal, Me
'Else
ElseIf frmLogin.cmdOK = True Then
'MsgBox ("OK")
'Dim g As New frmCalibration
'g.Show vbModal, Me
frmCalibration.Show
End If
End Sub
0
Cancel-knop
Door
VB6Dummy
, 04 mei 2011 07:16
Er zijn 7 reacties in dit onderwerp
#1
Geplaatst op 04 mei 2011 - 07:16
#2
Geplaatst op 04 mei 2011 - 07:16
Cliff Ophalvens zei:
hmm met visual basic heb ik niet veel ervaring, wel met visual-studio.net
je zou een code moeten vinden die zegt dat die form volledig opnieuw zou moeten beginnen, want als je die cancel knop induwt, blijft dat eigenlijk constant zo totdat dat form gesloten is en weer opnieuw wordt geopent. daarmee die error...
snap je ? misschien weet iemand op het forum hier een code voor ?
hmm, werkt nog steeds niet
ik heb het volgende gedaan zie hieronder:
'Calibration
Private Sub mnuSettingsCalibration_Click()
frmLogin.Show vbModal, Me
If frmLogin.cmdCancel = True Then
Dim m As New frmMain
m.Show vbModal, Me
ElseIf frmLogin.cmdOK = True Then
Dim g As New frmCalibration
g.Show vbModal, Me
End If
End Sub
Nu, als ik op de knop Cancel klikt, dan blijft ie op de bestaande form, maar als ik op de knop OK klikt dan gaat ie niet naar de form 'Calibration'.
hmm met visual basic heb ik niet veel ervaring, wel met visual-studio.net
je zou een code moeten vinden die zegt dat die form volledig opnieuw zou moeten beginnen, want als je die cancel knop induwt, blijft dat eigenlijk constant zo totdat dat form gesloten is en weer opnieuw wordt geopent. daarmee die error...
snap je ? misschien weet iemand op het forum hier een code voor ?
hmm, werkt nog steeds niet
ik heb het volgende gedaan zie hieronder:
'Calibration
Private Sub mnuSettingsCalibration_Click()
frmLogin.Show vbModal, Me
If frmLogin.cmdCancel = True Then
Dim m As New frmMain
m.Show vbModal, Me
ElseIf frmLogin.cmdOK = True Then
Dim g As New frmCalibration
g.Show vbModal, Me
End If
End Sub
Nu, als ik op de knop Cancel klikt, dan blijft ie op de bestaande form, maar als ik op de knop OK klikt dan gaat ie niet naar de form 'Calibration'.
#3
Geplaatst op 04 mei 2011 - 07:16
hmm met visual basic heb ik niet veel ervaring, wel met visual-studio.net
je zou een code moeten vinden die zegt dat die form volledig opnieuw zou moeten beginnen, want als je die cancel knop induwt, blijft dat eigenlijk constant zo totdat dat form gesloten is en weer opnieuw wordt geopent. daarmee die error...
snap je ? misschien weet iemand op het forum hier een code voor ?
je zou een code moeten vinden die zegt dat die form volledig opnieuw zou moeten beginnen, want als je die cancel knop induwt, blijft dat eigenlijk constant zo totdat dat form gesloten is en weer opnieuw wordt geopent. daarmee die error...
snap je ? misschien weet iemand op het forum hier een code voor ?
#4
Geplaatst op 04 mei 2011 - 07:16
Cliff Ophalvens zei:
sja dacht het wel, maar was het proberen waard he
heb je misschien nog andere ideeen, dat het wel werkt?
sja dacht het wel, maar was het proberen waard he
heb je misschien nog andere ideeen, dat het wel werkt?
#5
Geplaatst op 04 mei 2011 - 07:15
sja dacht het wel, maar was het proberen waard he
#6
Geplaatst op 04 mei 2011 - 07:15
Cliff Ophalvens zei:
hmm ik heb dit ook eens gehad maar dat was ins visual studio.net
maar misschien werkt het hier ook:
Private Sub cmdCancel_Click()
Dim f As New frmMain
f.Show vbModal, Me
'frmLogin.Cls
frmLogin.Hide
frmLogin = Nothing
End Sub
ik hoop dat het werkt !
Hij werkt niet, hij geeft de volgende error:
'Compile error:
Function or interface marked as restricted, or the function uses an Automation
type not supported in Visual Basic'
hmm ik heb dit ook eens gehad maar dat was ins visual studio.net
maar misschien werkt het hier ook:
Private Sub cmdCancel_Click()
Dim f As New frmMain
f.Show vbModal, Me
'frmLogin.Cls
frmLogin.Hide
frmLogin = Nothing
End Sub
ik hoop dat het werkt !
Hij werkt niet, hij geeft de volgende error:
'Compile error:
Function or interface marked as restricted, or the function uses an Automation
type not supported in Visual Basic'
#7
Geplaatst op 04 mei 2011 - 07:15
hmm ik heb dit ook eens gehad maar dat was ins visual studio.net
maar misschien werkt het hier ook:
Private Sub cmdCancel_Click()
Dim f As New frmMain
f.Show vbModal, Me
'frmLogin.Cls
frmLogin.Hide
frmLogin = Nothing
End Sub
ik hoop dat het werkt !
maar misschien werkt het hier ook:
Private Sub cmdCancel_Click()
Dim f As New frmMain
f.Show vbModal, Me
'frmLogin.Cls
frmLogin.Hide
frmLogin = Nothing
End Sub
ik hoop dat het werkt !
#8
Geplaatst op 04 mei 2011 - 07:15
Hoi allemaal
Ik heb in mijn programma aantal forms zitten waarbij ingelogd moet worden,
het inlogscherm bestaat uit 2 knoppen, 'Ok' en 'Cancel', 2 tekstvakken.
Wanneer ik de 2e keer op 'Cancel' klikt, geeft VB de volgende foutmelding,
'Run-time error '400':
Form already displayes; can't show modally'
Weten jullie misschien hoe ik dit moet oplossen?
Hier zijn enkele forms waarbij je inglogd moet worden:
'Database - Baselosses - Codetable
Private Sub mnuDataBaselCodetable_Click()
frmLogin.Show vbModal, Me <------- foutmelding
Dim f As New Codetable
f.Show vbModal, Me
End Sub
'Database - Baselosses - Frequencies
Private Sub mnuDataBaselFrequencies_Click()
frmLogin.Show vbModal, Me <------- foutmelding
Dim f As New Frequencies
f.Show vbModal, Me
End Sub
------------------------------------------------------------ ------------------------
Hier is de code van het inlogscherm:
Option Explicit
Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpbuffer As String, nSize As Long) As Long
Dim cnnADO As New ADODB.Connection
Dim cmdADO As New ADODB.Command
Dim rsADO As New ADODB.Recordset
Dim cmdUserADO As New ADODB.Command
Dim rsUserADO As New ADODB.Recordset
Public OK As Boolean
Private Sub Form_Load()
Dim sBuffer As String
Dim lSize As Long
sBuffer = Space$(255)
lSize = Len(sBuffer)
Call GetUserName(sBuffer, lSize)
If lSize > 0 Then
txtUserName.Text = Left$(sBuffer, lSize)
Else
txtUserName.Text = vbNullString
End If
'Verbinding tot stand brengen / Connection to the database
cnnADO.Provider = "Microsoft.Jet.OLEDB.3.51"
cnnADO.ConnectionString = "D:My DocumentsChifaiBaselosses.mdb"
cnnADO.Open
'Opdracht samenstellen
cmdADO.ActiveConnection = cnnADO
cmdADO.CommandText = "SELECT [Value] FROM settings WHERE [Name] = 'Password' "
cmdUserADO.ActiveConnection = cnnADO
cmdUserADO.CommandText = "SELECT [Value] FROM settings WHERE [Name] = 'Username' "
'Recordset configureren en openen
rsADO.CursorLocation = adUseClient
rsADO.CursorType = adOpenDynamic
rsADO.LockType = adLockPessimistic
rsADO.Open cmdADO
rsUserADO.CursorLocation = adUseClient
rsUserADO.CursorType = adOpenDynamic
rsUserADO.LockType = adLockPessimistic
rsUserADO.Open cmdUserADO
txtUserName.Text = (rsUserADO!Value)
End Sub
Private Sub Form_Unload(Cancel As Integer)
cnnADO.Close
End Sub
Private Sub cmdOK_Click()
'ToDo: create test for correct password
'check for correct password
If txtPassword.Text = (rsADO!Value) Then
OK = True
frmLogin.Hide
Else
MsgBox "Invalid Password, try again.", , "Login"
txtPassword.SetFocus
txtPassword.SelStart = 0
txtPassword.SelLength = Len(txtPassword.Text)
End If
End Sub
Private Sub cmdCancel_Click()
Dim f As New frmMain
f.Show vbModal, Me
'frmLogin.Cls
frmLogin.Hide
End Sub
------------------------------------------------------------ ------------------------
'Form Exit:
'Exit-button
Private Sub cmdExit_Click(Index As Integer)
...
reply = MsgBox(rsADO!English, vbYesNo, "Exit")
If reply = vbYes Then
frmLogin.Show vbModal, Me <------- foutmelding
End
End If
End Sub
Alvast Bedankt.
Ik heb in mijn programma aantal forms zitten waarbij ingelogd moet worden,
het inlogscherm bestaat uit 2 knoppen, 'Ok' en 'Cancel', 2 tekstvakken.
Wanneer ik de 2e keer op 'Cancel' klikt, geeft VB de volgende foutmelding,
'Run-time error '400':
Form already displayes; can't show modally'
Weten jullie misschien hoe ik dit moet oplossen?
Hier zijn enkele forms waarbij je inglogd moet worden:
'Database - Baselosses - Codetable
Private Sub mnuDataBaselCodetable_Click()
frmLogin.Show vbModal, Me <------- foutmelding
Dim f As New Codetable
f.Show vbModal, Me
End Sub
'Database - Baselosses - Frequencies
Private Sub mnuDataBaselFrequencies_Click()
frmLogin.Show vbModal, Me <------- foutmelding
Dim f As New Frequencies
f.Show vbModal, Me
End Sub
------------------------------------------------------------ ------------------------
Hier is de code van het inlogscherm:
Option Explicit
Private Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpbuffer As String, nSize As Long) As Long
Dim cnnADO As New ADODB.Connection
Dim cmdADO As New ADODB.Command
Dim rsADO As New ADODB.Recordset
Dim cmdUserADO As New ADODB.Command
Dim rsUserADO As New ADODB.Recordset
Public OK As Boolean
Private Sub Form_Load()
Dim sBuffer As String
Dim lSize As Long
sBuffer = Space$(255)
lSize = Len(sBuffer)
Call GetUserName(sBuffer, lSize)
If lSize > 0 Then
txtUserName.Text = Left$(sBuffer, lSize)
Else
txtUserName.Text = vbNullString
End If
'Verbinding tot stand brengen / Connection to the database
cnnADO.Provider = "Microsoft.Jet.OLEDB.3.51"
cnnADO.ConnectionString = "D:My DocumentsChifaiBaselosses.mdb"
cnnADO.Open
'Opdracht samenstellen
cmdADO.ActiveConnection = cnnADO
cmdADO.CommandText = "SELECT [Value] FROM settings WHERE [Name] = 'Password' "
cmdUserADO.ActiveConnection = cnnADO
cmdUserADO.CommandText = "SELECT [Value] FROM settings WHERE [Name] = 'Username' "
'Recordset configureren en openen
rsADO.CursorLocation = adUseClient
rsADO.CursorType = adOpenDynamic
rsADO.LockType = adLockPessimistic
rsADO.Open cmdADO
rsUserADO.CursorLocation = adUseClient
rsUserADO.CursorType = adOpenDynamic
rsUserADO.LockType = adLockPessimistic
rsUserADO.Open cmdUserADO
txtUserName.Text = (rsUserADO!Value)
End Sub
Private Sub Form_Unload(Cancel As Integer)
cnnADO.Close
End Sub
Private Sub cmdOK_Click()
'ToDo: create test for correct password
'check for correct password
If txtPassword.Text = (rsADO!Value) Then
OK = True
frmLogin.Hide
Else
MsgBox "Invalid Password, try again.", , "Login"
txtPassword.SetFocus
txtPassword.SelStart = 0
txtPassword.SelLength = Len(txtPassword.Text)
End If
End Sub
Private Sub cmdCancel_Click()
Dim f As New frmMain
f.Show vbModal, Me
'frmLogin.Cls
frmLogin.Hide
End Sub
------------------------------------------------------------ ------------------------
'Form Exit:
'Exit-button
Private Sub cmdExit_Click(Index As Integer)
...
reply = MsgBox(rsADO!English, vbYesNo, "Exit")
If reply = vbYes Then
frmLogin.Show vbModal, Me <------- foutmelding
End
End If
End Sub
Alvast Bedankt.
0 gebruiker(s) lezen dit onderwerp
0 lid(leden), 0 bezoeker(s), 0 anonieme gebruikers