수정까지 마쳤는데, 중간 폼이 작동할때 어색한 부분이나 뭔가 조미료 같이 필요한 알람이 있는지 확인 해볼 필요가 있습니다. 우리는 개발자라서 어떤 로직을 따라가는지 알지만, 막상 사용자는 실행이 된건지 아닌지 확인을 찾아서 하게되기 때문입니다.
간단한 폼이지만 먼저 사용을 하면서 매끄럽게 만들부분이 있는지 확인 해보겠습니다.
- 먼저 살펴볼 부분은 폼이 열릴때 최초 커서가 어디에 위치하는지
- 작성인지 검색인지에 따라서 그 다음 행위가 어디서 이뤄져야하는지
- 각 버튼의 이벤트 이후 어떤 작업이 이뤄져야하는지 봐야합니다.
폼을 열고 보시면서 다이어 그램으로 시퀀스를 그려보겠습니다. (영상으로 해보니, 잘 표현이 안되더군요 ㅎㅎ)
대략 이런 시퀀스가 필요한것 같습니다.
1. 검색창 기준 포커스 이동
처음에 폼이 열리면
검색창에 커서가 가야되겠지요? 그래야 검색을 바로 해서 있는 업체인지 없는 업체인지 알수 있으니까요~
검색창에 입력후 탭을 누르면 > 검색 버튼으로 포커스가 이동하고 엔터치면 > 검색리스트가 나오고 >
검색리스트를 선택하면 업체명으로 포커스를 보내는 것까지 구현을 먼저 해보겠습니다.
폼에 on load에 코드 삽입을 하겠습니다.
Private Sub Form_Load()
검색창.SetFocus
End Sub
폼을 열면 포커스가 검색창에 뜹니다. 검색창에 바보를 넣고 탭을 누르면 검색 버튼으로 이동하게 코딩을 하겠습니다.
검색창에 After Update에 코드 삽입.
Private Sub 검색창_AfterUpdate()
버검색.SetFocus
End Sub
다시 검색버튼(버검색이 클릭되면 검색리스트로 포커스를 보내겠습니다.)
Private Sub 버검색_Click()
'검색리스트.RowSource = "SELECT ID, 업체명 FROM 고객 WHERE 업체명 Like '*" & 검색창 & "*'"
검색리스트.RowSource = "SELECT * FROM 고객 WHERE 업체명 Like '*" & 검색창 & "*'"
검색리스트.SetFocus
End Sub
가장 아랫줄에 검색리스트.SetFocus를 추가해줬습니다.
Private Sub 검색리스트_AfterUpdate()
ID = 검색리스트
업체명 = 검색리스트.Column(1)
대표이름 = 검색리스트.Column(2)
사업자등록번호 = 검색리스트.Column(3)
전화번호 = 검색리스트.Column(4)
팩스번호 = 검색리스트.Column(5)
주소 = 검색리스트.Column(6)
업종 = 검색리스트.Column(7)
업태 = 검색리스트.Column(8)
부가세이메일 = 검색리스트.Column(9)
업체명.SetFocus
End Sub
그 뒤 클릭을 하면 업체명으로 포커스를 보내줍니다.
여기까지 과정을 영상으로 보겠습니다.
잘 되는 군요.
업체명부터 이메일까지는 다른 방법으로 포커스를 옮기겠습니다.
속성 시트의 탭 인덱스라는 기능을 사용합니다.
업체명의탭 인덱스가 5네요.
핑크 화살표대로 번호를 증가시키겠습니다. 사업자등록번호의 탭 인덱스는 6이됩니다.
그렇게 부가세 이메일의 탭 인덱스는 11로 끝이 납니다.
부가세 이메일 다음은 저장 버튼으로 넘어갑니다. 탭 인덱스 12를 사용하시거나, setfocus를 사용해서 넘기면 됩니다.
저는 탭인덱스를 12로 지정하겠습니다. (별 다른 이유없습니다. 하고 싶은거 하시면 됩니다.)
이제 저장 버튼을 누르면 리스트가 다시 리쿼리 되는 과정을 심어줍니다. 새로운 업체를 저장하고 바로 리스트에서 볼수 있게 말이죠. 아래의 노란줄 친 부분을 추가해줍시다.
이제 새로운 레코드를 입력할때의 과정을 테스트 해보겠습니다.
검색어 기준이 "처럼"이었습니다. 무슨 처럼이 있는 업체인지 확인을 하고, 없으니 새롭게 입력을 시작해서 저장하니 리스트에 보이는 방식입니다. 화면상 마우스는 가만히 있고, 키보드로만 포커스가 이동하는 보입니다. 잘 작동합니다.
[이전 글] : 바코2://#13. 기초 코딩, 버튼에 코딩삽입(5) - 수정2
[다음 글] : 바코2://#15. 기초 코딩, 폼 다듬기 2 - 메세지 박스와 삭제
'바보처럼 코딩하기 > 바보처럼 코딩하기 ver.2' 카테고리의 다른 글
바코2://#16. 하위 개념 사용해보기 (0) | 2021.12.23 |
---|---|
바코2://#15. 기초 코딩, 폼 다듬기 2 - 메세지 박스와 삭제 (0) | 2021.12.23 |
바코2://#13. 기초 코딩, 버튼에 코딩삽입(5) - 수정2 (0) | 2021.12.23 |
바코2://#12. 기초 코딩, 버튼에 코딩삽입(4) - 수정 (3) | 2021.12.23 |
바코2://#11. 기초 코딩, 버튼에 코딩삽입(3) - 검색2 (0) | 2021.12.22 |