드로우홀릭 더베이직

SelStart, SelLength 작동 문의

2022.12.29 09:40:56 조회 수 1678 추천 수 0

Private Sub txt테이블_GotFocus()
  txt테이블.SelStart = 0
  txt테이블.SelLength = Len(txt테이블)
End Sub

Private Sub txt테이블_KeyPress(KeyAscii As Integer)
  If KeyAscii = vbKeyReturn Then SendKeys vbTab
End Sub

 

안녕하세요?

텍스트 박스를 클릭하였을 때 현재 출력된 텍스트가 선택되도록 하려고 하는데요,

위와 같이 코딩하여도 작동이 되지 않아 문의드립니다.

감사합니다.


profile

돌직구

2022.12.29 11:12:45
*.12.233.186

질문이 잘 이해되지 않습니다.

'텍스트 박스를 클릭하였을 때, 현재 출력된 텍스트가 선택'이라는 것이 잘 이해가 안 되는데요..
'텍스트 박스를 클릭하였을 때, 텍스트 박스 안에 있는 텍스트가 모두 선텍' 이라는 의미인가요?

일단 'KeyPress' 이벤트에 정의해 놓은 것은 질문과 관계 없는듯 하고요..

그리고 프로그래밍 하실 때에는 '클릭'과 '포커스'를 구분하셔야 합니다.

텍스트 박스에 포커스가 갈 때를 원하는 것인지..
텍스트 박스를 클릭할 때를 원하는 것인지 구분해야 합니다.

 

액세스 기본 동작으로, 탭 키 등으로 포커스가 이동되면, 원하시는 대로 텍스트 박스 안의 텍스트가 모두 선택됩니다. 그러니 이것을 별도로 구현할 필요는 없겠죠.

그러나 '클릭' 했을 때에는 텍스트 박스에서 내가 클릭한 부분에 커서가 갑니다. (SelLength=0)

그러니, 이번에는 '클릭' 이벤트를 사용해야 합니다.

Private Sub txt테이블_Click()
  txt테이블.SelStart = 0
  txt테이블.SelLength = Len(txt테이블)
End Sub

엄밀히 말하자면, 마우스로 클릭했을 때, 기본적으로 텍스트 박스의 모든 텍스트가 선택됩니다.
그러나 '클릭'했기 때문에, SelLength가 사라지고, 내가 클릭한 부분만 커서가 위치하게 되는 것이 됩니다.
그러니 위에 작성하신 GotFocus가 작동하지 않는 것이 아니고, 작동은 했는데 너무 빨리 없어지게 된 것이라고 보면 됩니다.

좁쌀영감

2022.12.30 04:43:24
*.82.71.162

잘 됩니다. 친절한 설명 감사합니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 FAQ: 어떤 과정을 수강하는 것이 좋을까요? 외 돌직구 2017-08-29 31945
공지 좋은 답변을 이끌어 내는 방법 [1] 돌직구 2017-07-14 28073
공지 액세스 Q/A 게시판 형식을 변경합니다. 돌직구 2014-09-10 23137
480 데이처를 TXT 문장으로 완성하는 방법에 대해 1 붕어짱 2023-01-09 42
479 분류 테이블 sort 문의 file 2 헬로우리턴 2023-01-05 314
478 튜터링 서비스 2 헬로우리턴 2023-01-04 8376
» SelStart, SelLength 작동 문의 2 좁쌀영감 2022-12-29 1678
476 수강료 할인 이벤트 2 헬로우리턴 2022-12-23 3373
475 #num! 뜨는 이유 file 4 감사와긍정 2022-11-17 693
474 하나의 액세스 파일에서 다른 액세스 파일 데이터 다루기 3 좁쌀영감 2022-11-05 995
473 보고서 만들기 그룹별 정리 file 3 감사와긍정 2022-11-01 610
472 문의 1 진승연 2022-10-27 1999
471 속성시트 형식에서 소수점자리 설정 file 1 감사와긍정 2022-10-27 1295
470 필드명 관련 문의드립니다. 1 박형근 2022-10-27 780
469 데이터 관련 문의 1 진승연 2022-10-26 1186
468 사무자동화 실기 준비중입니다^^ file 1 감사와긍정 2022-10-14 1011
467 직장인을 위한 실무 엑세스 교재 CD를 잃어버렸습니다. 1 써치 2022-10-07 2580
466 교안 다운로드 에러가 발생합니다. 1 linuver 2022-08-23 202
465 대화상자에서 명령메크로작동? 1 열심 2022-08-16 126
464 변환함수? 1 열심 2022-08-12 1468
463 콤보박스 1 열심 2022-08-07 3945
462 메모형식 데이터추가만 되게 하는방법 알고싶습니다 file 1 맥스21 2022-08-06 419
461 대화상자 매크로동작에 대한 재질문입니다 1 열심 2022-08-01 762


  주소  12925 경기도 하남시 미사대로 540, B동 917호 (현대지식산업센터 한강미사2차) ㈜팀데이터이십일  |  고객센터 전화번호  02-467-2998  |  대표이사  염기웅
개인정보관리책임자  염기웅 (ml_privacy@td21.com)  |  사업자등록번호  120-86-79260  |  통신판매업신고번호  제 2021-경기하남-1166 호  [사업자 정보 확인]
  TD21의 사전 서면 동의 없이 TD21 사이트 일체의 정보, 콘텐츠 및 UI 등을 상업적 목적으로 전시, 전송, 스크래핑 등 무단 사용할 수 없습니다.