SA_BLOG

[비주얼베이직] 메모장 글자갯수 구하기 본문

프로그래밍/비주얼베이직

[비주얼베이직] 메모장 글자갯수 구하기

wooty9 2014. 6. 27. 23:44

'소스코드로 배우는 비주얼베이직' 이라는 나온지 얼마 안된 책이 있는데 메모장 만드는 예제가 있다.

소스코드를 보면서 만들다 보면 메모장의 열, 열의 행 구하는 부분이 있는데 오류가 있다.


(▲ 바로 이 기능을 구현하는 부분)

아래는 위 기능을 구현하는 코드의 일부이다.

위 코드를 보면 'n += Me.txtNote.Lines(i).Length + 1' 부분이 잘못되었다.

위 코드 그대로 썼다가는 'Col' 부분이 제대로 동작하지 않는다.

VB 초보자라 그런지 왜 안될까 고민하다가 1 을 2로 바꿨더니 정상동작 되었다.

(2가 오타나서 1이 된것이 아니길 빈다..)


아래는 수정된 코드이다.


수정된 코드는 아래와 같이 계산하고 tsslblMove.Text 로 설정한다.

(아래와 같이 텍스트가 있다고 가정하면..)
* ss = SelectStart, * lng = txtNote.Line(열번호).Length <- ' txtNote.Line(열번호).Length' 해당 줄의 글자 갯수를 구하는 코드

12345 : 5(ss) - 0 = 5
1234 : 10(ss) - 6(lng+2) = 4
123 : 14(ss) - 11(6+5{lng+2}) = 3    // 2번째 줄의 6을 lng+2 와 더한다.
12 : 17(ss) - 15(11+4{lng+2}) = 2    // 3번째 줄의 11을 lng+2 와 더한다.
1 : 19(ss) - 18(15+3{lng+2}) = 1     //  4번째 줄의 15를 lng+2 와 더한다.

'소스코드로 배우는 비주얼베이직' <- 이 책은 좋은 예제는 많은데 중간중간 소스가 없거나, 오타가 있는곳이 많다.

가메출판사에서 나온 책인데, 홈피 들어가니 마지막으로 운영자에게 답변받은 글이 2010년이다.

출판만 하는것 같은데, 저자인 '조호묵'님은 왜 이런 출판사에서 책을 내는지 모르겠다.

(이메일이라도 있으면 빠진 부분이나 오타난곳 알려줄텐데 저자 이름만 있고 연락할 방법이 없네..)

결국 하고싶은 말은.. 이 책 예제만 좋지, 별로 추천하고 싶지 않다.

구입한지 일주일도 안됬는데..

Comments