2013-03-03 2 views
0

이 모듈을 만들었으며 구조 학생 및 교사의 학생과 교사가 문자열로 저장된다는 것을 알았지 만 (이 버튼은 라디오 버튼으로 저장 됨) 파일에 ID 및 암호의 true 또는 false 값을 저장하여 작동합니다. 그러나, 나는 다른 클래스에서 라디오 버튼을 읽을 수 없습니다.VB.net의 모듈에서 라디오 버튼을 읽는 중

는이 내가 메인 파일에있는 라디오 버튼을 읽기 위해 노력하고있는 곳입니다 내 모듈 클래스

Imports System.IO 
Module user_info_mod 
    Structure user 
     <VBFixedString(3)> Dim name As String 
     <VBFixedString(3)> Dim password As String 
     <VBFixedString(7)> Dim student As String 
     <VBFixedString(3)> Dim teacher As String 
    End Structure 
    Public newuser As user 
    Public userNumber As Integer = FreeFile() 
    Public userrecordNumber As Integer = 1 
    Public Sub setRecordNumber() 
     Dim n As Byte = 0 
     FileOpen(userNumber, "D:\users.dat", OpenMode.Random, OpenAccess.Read) 
     While Not EOF(userNumber) 
      n = n + 1    'increments the record number of the user 
      FileGet(userNumber, newuser, n) 
     End While 
     userrecordNumber = n 
     FileClose(userNumber) 
    End Sub 

End Module 

입니다 (newuser.student = 참) 내가 변화를 생각하면

Private Sub cmdLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)   Handles cmdLogin.Click 
     Dim password As String 
     password = txtPassword.Text 
     Dim username As String 
     username = txtUsername.Text 
     FileOpen(userNumber, "D:\users.dat", OpenMode.Random, OpenAccess.Read) 
     FileGet(userNumber, newuser, userrecordNumber) 

     If password = newuser.password And username = newuser.name And newuser.student = True Then 
      MsgBox("ID Accepted") 

      Dim frmNew As New Student_selection  
      frmNew.ShowDialog() 
      FileClose(userNumber) 

     Else 
      FileClose(userNumber) 
      MsgBox("ID is not accepted") 
     End If 
    End Sub 

모듈에서 문자열을 부울로 설정하면 모듈 내에서 레코드 번호를 설정할 때 사용자 파일을 저장할 수 없으므로이 문제를 해결하기위한 올바른 방법은 무엇입니까?

답변

0

문제가 해결되었습니다. 모듈 내의 라디오 버튼의 순서를 먼저 변경 한 다음 부울로 변경해야했습니다. Dim student As Boolean

관련 문제