VB - image viewer

Mokwon Univ 2008. 8. 16. 16:19
vb 를 이용하여 처음으로 ㅋㅋ
아주 간단하게 이미지보기를 만들어봤다
그렇게 힘든건 없었지만 vb는 처음 다뤄봤기에 많이 어설프다
변수명이나 컨트롤명에서 특히 그런것 같고 좀..조잡해 보인다
좀더 간결하게 코딩하는 방법도 있을테고, 정렬하는 순서도 있을텐데 말이다 ㅋㅋ
현재 LoadPicture 로 그림이미지를 불러올 때 그림이미지가 깨진파일이면 에러가 생긴다
반환형을 찾아보니 이미지객체라고만 나오던데...
이걸로 에러를 검사해서 깨진파일이 들어오면 걸러내야 되는데...
 
한번 생각좀 해보고 다시 짜봐야겄다 ㅋㅋ
 
 
 
 
' 변수선언
Dim ImgName As String
Dim Time_Count As Long
Dim i As Integer
Dim j As Integer
 
' 타이머 실행시 새로고침
Private Sub tim_Timer()
    If Time_Count = 2 Then
         filCom.Refresh
        Time_Count = 0
    End If
        Time_Count = Time_Count + 1
End Sub
 
' 새로고침 시작
Private Sub cmdNewStart_Click()
    tim.Enabled = True
    Time_Count = 0
End Sub
 
' 새로고침 종료
Private Sub cmdNewClose_Click()
    tim.Enabled = False
End Sub
 
' dirpath를 filepath로 보내준다
Private Sub dirCom_Change()
    filCom.Path = dirCom.Path
    filCom.Pattern = "*.gif;*.jpg;*.bmp;*.png"
End Sub
 
' drive를 dirpath로 보내기
Private Sub drvCom_Change()
    dirCom.Path = drvCom.Drive
End Sub
 
' file 이름 보여주기
Private Sub filCom_Click()
    ' 최초 클릭시 위에 그림을 넣는다
    If i = 0 Then
        PreFilePath$ = filCom.Path
        If Right(PreFilePath$, 1) = "" Then
            PreFilePath$ = Left(PreFilePath$, 2)
        End If
            ImgName = PreFilePath$ & "" & filCom.FileName
            imgPreViewer.Picture = LoadPicture(ImgName)
    ' 다음 클릭시
    Else
        ' 밑에 그림이 없다면 새그림을 넣는다
        If j = 0 Then
            NextFilePath$ = filCom.Path
            ImgName = NextFilePath$ & "" & filCom.FileName
            imgNextViewer.Picture = LoadPicture(ImgName)
        ' 밑에 그림이 있다면 원래그림을 올려준다
        Else
            NextFilePath$ = filCom.Path
            imgPreViewer.Picture = LoadPicture(ImgName)
            ImgName = NextFilePath$ & "" & filCom.FileName
            imgNextViewer.Picture = LoadPicture(ImgName)
           
        End If
        j = 1       ' 밑에 그림이 존재하다는걸 표시
    End If
    i = 1           ' 위에 그림이 존재하다는걸 표시
       
End Sub
 
' form 시작
Private Sub Form_Load()
    MsgBox "어서오세요 ^-^* "
    i = 0
    j = 0
    filCom.Pattern = "*.gif;*.jpg;*.bmp;*.png"
End Sub
 
' form 종료
Private Sub Form_Unload(Cancel As Integer)
    Dim Memo As Integer
    Memo = MsgBox("종료하시겠습니까?", _
                vbExclamation + vbYesNo, "닫는 중")
    Select Case Memo
        Case vbYes:
            MsgBox "프로그램을 종료합니다", , "종료 확인"
        Case vbNo:
            Cancel = True
    End Select
End Sub
 
 ' 종료
 Private Sub cmdClose_Click()
     Dim Memo As Integer
    Memo = MsgBox("종료하시겠습니까?", _
                vbExclamation + vbYesNo, "닫는 중")
    Select Case Memo
        Case vbYes:
            MsgBox "프로그램을 종료합니다", , "종료 확인"
            End
        Case vbNo:
            Cancel = True
    End Select
 End Sub
Posted by 용학도리
,