August 28, 2001
Option Explicit
Dim sFinns As String
Dim sFörnamn As String
Dim sEfternamn As String
Dim slogin As String
Dim sLösenord As String
Dim Antal As Integer
Dim filnr As Integer
Dim post As Integer
Dim FilNamn As String
Dim sfilnr As Integer
Dim sAntal As Long
Dim spost As String
Dim sFilNamn As String
Private Sub Form_Load()
form_load1
form_load2
End Sub
Private Sub form_load1()
Dim obj
cmdMeny.ShowOpen
FilNamn = cmdMeny.FileName
On Error GoTo errhandler1
Set obj = CreateObject("Scripting.FileSystemObject")
obj.createtextfile App.Path & "datakonton.txt"
errhandler1:
Exit Sub
On Error GoTo errhandler
MkDir App.Path & "data"
errhandler:
Exit Sub
End Sub
Private Sub form_load2()
Dim obj
On Error GoTo errhandler2
Set obj = CreateObject("Scripting.FileSystemObject")
obj.createtextfile App.Path & "datasök.txt"
errhandler2:
Exit Sub
End Sub
Private Sub mnuÄndra_Click()
Bytlösen.Show
End Sub
Private Sub mnuAvsluta_Click()
Close filnr
Unload Me
End
End Sub
Private Sub mnuSök_Click()
frmSök.Show
End Sub
Private Sub mnuSpara_Click()
spara1
End Sub
Private Sub spara1()
Dim Postlängd As Integer
Postlängd = Len(Konton)
filnr = FreeFile
FilNamn = App.Path & "datakonton.txt"
Open FilNamn For Random As filnr Len = Postlängd
post = 1
Antal = FileLen(FilNamn) / Postlängd
stegtvå2
End Sub
Private Sub stegtvå2()
Konton = Konton
Antal = Antal + 1
Put filnr, Antal, Konton
post = Antal
stegtre
End Sub
Private Sub stegtre()
Dim sPostlängd As Integer
sPostlängd = Len(Konton.login)
sfilnr = FreeFile
sFilNamn = App.Path & "datasök.txt"
Open sFilNamn For Random As sfilnr Len = sPostlängd
spost = 1
sAntal = FileLen(sFilNamn) / sPostlängd
stegtre3
End Sub
Private Sub stegtre3()
slogin = slogin
sAntal = sAntal + 1
Put sfilnr, sAntal, Konton.login
spost = sAntal
form1.txtFörnamn.SetFocus
poster
rensa
End Sub
Private Sub mnuVisa_Click()
MsgBox ("Som systemadministratör så borde du veta hur man sköter detta vanliga loginprogram, men tydligen inte.")
MsgBox ("Du matar först in förnamn och efternamn och så generas ett konto med initialerna. Lösenordet rekomenderas starkt att det byts, och det kan du göra under File Byt lösneord där du även kan söka konto, ta bort konto, spara konto och skriva ut konto.")
End Sub
Private Sub txtEfternamn_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
txtLogin = Left(Konton.Förnamn, 1) & Left(Konton.Efternamn, 1)
txtLösen = ("v1") & Left(Konton.Förnamn, 2) & Left(Konton.Efternamn, 2)
Konton.login = txtLogin
Konton.Lösen = txtLösen
End If
slogin = form1.txtLogin
Konton.Efternamn = form1.txtEfternamn
Konton.Förnamn = form1.txtFörnamn
Konton.login = form1.txtLogin
Konton.Lösen = form1.txtLösen
Combo1.AddItem txtLogin
End Sub
Private Sub txtFörnamn_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
txtEfternamn.SetFocus
End If
End Sub
Private Sub mnuSkrivut_Click()
Printer.Print "Förnamn:" & txtFörnamn
Printer.Print "Efternamn:" & txtEfternamn
Printer.Print "Login:" & txtLogin
Printer.Print "Lösenord:" & txtLösen
Printer.EndDoc
End Sub
Private Sub txtLogin_Change()
Konton.login = form1.txtLogin
slogin = form1.txtLogin
End Sub
Private Sub txtLösen_Change()
Konton.Lösen = form1.txtLösen
End Sub
Private Sub txtFörnamn_Change()
Konton.Förnamn = form1.txtFörnamn
End Sub
Private Sub txtEfternamn_Change()
Konton.Efternamn = form1.txtEfternamn
End Sub
Public Sub poster()
Get filnr, post, Konton
End Sub
Public Sub rensa()
form1.txtEfternamn = ""
form1.txtFörnamn = ""
form1.txtLogin = ""
form1.txtLösen = ""
End Sub
modul1
Global Konton As Kontoinfo
Type Kontoinfo
Förnamn As String * 10
Efternamn As String * 10
login As String * 4
Lösen As String * 8
End Type
August 28, 2001
nu har jag dock lite andra problem.. som jag misstänkte.
problem 1: när jag startar programmet och skriver en fil så skriver dom nya posterna över dom gamla, jag måste ju på något sätt öppna den, men hur?
problem 2: jag vill få en text fil som jag har sparat login namnen i att dyka upp i en combobox så att dom listas, hur?
koden är den som ligger här över.
August 28, 2001
okej, jag har löst dom problem också, men nu har jag ett annat. när jag loadar från txt filen till comboxen så radas dom upp sida vid sida, jag vill ju ha dom i en lista, hur löser jag det?
finns det någon inställning som gör att den läser på rätt sätt eller måste man skriva i koden så att den lägger till en ny read eller fyller ut mellan rummet varje gång.. och i så fall hur gör man det?
1 Guest(s)