창조유저그룹-커즈닷컴
Window close
ID :     PASS :   
   
  처음으로
  창조
  창조 소개
창조 다운로드
CUGz.com 소개
온라인 도움말
  커뮤니티
  가입인사
자유게시판
Q/A게시판
TIP/TECH
열린강좌
자주하는질문
아이디어게시판
  자료실
  소스자료실
프로그램자료실
기타자료실
명예의 전당
이미지 자료실
  지원/기타
  표준용어재정
구글 웹서치  
관리자 전용


창조 팁
- '창조' 에 관한 팁을 올리는 곳입니다. 다수의 이미지가 필요하시면 아래 '이미지 자료실' 에 업로드 후 불러와 주세요..


LIST ALL
Posted by 박종훈2008-07-19 16:24:55, Hit : 5723
[ㅎ메모] 창조만으로 알수없는 것을 API로 얻기
Homepage : http://qnrdlqkrwhdgns.canxan.com/
Post URL : http://cugz.sjworks.net/bbs/zboard.php?id=tip&no=327
창조에서 제가 가장 많이 활용해본 객체는 당연 [ㅎ메모]입니다.
제가 에디터 프로그램 제작에 관심이 많기 때문이죠^^

예전에 웹에디터 제작한 후로 얻은 지식을 간단히 써볼까 합니다.
그리고, 오늘 인터넷에서 얻은 정보도 써보고요^^

들어가기 전에 [ㅎ사용자함수] 객체에 다음과 같이 설정을 해봅시다.
그 이유는 창조에 기본 내장된 SendMessage 함수는 진리함수라서 활용하는데 많은 제약이 있기에 직접 user32.dll 에서 사용합니다.

ㅎ사용자함수
-----------------------------------------------
연결파일 : user32.dll
실수함수: SendMessageA(실수: 핸들, 메시지코드, 인자1, 인자2);
-----------------------------------------------



EM_GETFIRSTVISIBLELINE(상수값 : 206)
이것은 [ㅎ메모]에서 화면상 보이는 가장 첫줄의 번호를 알려줍니다.

예제소스) [ㅎ메모]에서 보이는 첫줄의 번호를 알려줍니다.
     사용자함수0.SendMessageA(메모0.핸들, 206, 0, 0);


EM_LINEINDEX(상수값 : 187)
줄번호로부터 문자의 인덱스를 구합니다.
쉽게 말하자면, 해당 줄의 첫문자의 위치를 반환합니다.
인자1에 해당 줄번호를 넣으면 되고, -1(창조에서는 4294967295)를 넣으면 현재줄의 문자의 인덱스를 반환합니다.

주의! 창조에서는 그냥 -1이라 사용하면 안되며, 4294967295 를 넣어줍시다!

예제소스) 현재 [ㅎ메모]의 칸(Column)을 알려준다.
     (메모0.선택문자위치) - 사용자함수0.SendMessageA(메모0.핸들, 187, 4294967295, 0);

참고) 위의 예제소스에서 4294967295는 -1을 뜻합니다.


EM_LINELENGTH(상수값 : 193)
해당 위치의 문자수를 얻습니다.
여기서 위치란 행(Line)을 뜻하는 것이 아니라, 위치를 뜻합니다.
인자1에 -1(창조에서는 4294967295)을 넣으면 현재 줄의 문자 길이를 반환하고,
얻고자 하는 문자 위치를 넣으면 그 문자가 있는 줄의 문자길이를 얻습니다.

예제소스1)  10번째 문자 위치에 해당하는 줄의 문자길이를 얻는다.
     사용자함수0.SendMessageA(메모0.핸들, 193, 10, 0);

예제소스2)  현재 위치에 해당하는 줄의 길이를 얻어온다.
     사용자함수0.SendMessageA(메모0.핸들, 193, 0, 0);


EM_LINEFROMCHAR(상수값 : 201)
문자위치로 부터 해당 문자가 있는 줄번호를 얻어옵니다.
인자1에 -1(창조에서는 4294967295)을 넣으면 현재 위치한 곳의 줄번호를 얻어오고,
얻고자 하는 문자 위치를 넣으면 그 문자가 위치한 줄번호를 얻어옵니다.

예제소스) 13번째 문자가 있는 곳의 줄번호를 얻습니다.
     사용자함수0.SendMessageA(메모0.핸들, 201, 13, 0);



EM_SETMARGINS(상수값 : 211)
ㅎ메모에 여백(마진)을 지정합니다.
저도 이 메시지를 자세히느 모르겠지만;;;
인자1에는 오른쪽여백을 줄것인지 왼쪽여백을 줄것인지 지정하는 건데,
왼쪽여백은 1, 오른쪽여백은 2로 지정합니다만, 글쎄;; 2로 지정을 해줘도 오른쪽여백은 안생깁니다만; 그래서 1만 사용합니다;;
그리고 인자2에는 px 단위로 여백을 입력합니다.

예제소스) ㅎ메모의 왼쪽에 30px의 여백을 지정합니다.
     SendMessage(메모0.핸들, 211, 1, 30);

참고) 이 예제는 창조의 기본 내장명령어 SendMessage를 사용해도 상관은 없습니다.


EM_GETLINECOUNT(상수값 : 186)
이것은 창조의 ㅎ메모.내용.줄수 에 해당하는 것입니다.

LIST ALL               GO TO THE TOP


N
   Subject
Posted by
Date
H
117
   숫자만 입력되는 에디트[Numeric Editbox] [6]
박종훈 2006/10/15  7515
116
   ㅎ메모, ㅎ리스트박스 등에서, 속도향상 팁 [7]
박종훈 2006/11/11  5710
115
   RPG 게임 제작할때 도움이 되는 참고 프로그램들... [1]
장규형 2006/11/19  5380
114
     또 하나 더!
이진성 2008/02/15  4115
113
   Manifest 파일을 만들면, 생기는 변화!
박종훈 2006/12/17  6354
112
   어떤방법으로든 핸들[Handle]를 구해보자! [수정#3] [18]
박종훈 2006/12/31  10082
111
   보기좋은 코드 관리도 좋다; [4]
박종훈 2006/12/31  5220
110
   코딩시 키보드 노동 약간 줄이자; [5]
박종훈 2007/01/01  5735
109
   [버그!] 'ㅎ리스트박스.갱신시작'을 사용할때 주의하자!.. [7]
박종훈 2007/01/13  4982
108
   음수형 -> 양수형 간단한 방법
지상현 2007/01/23  5668
107
   [등록완료] 창조만을 이용하여 파일합치고 풀기 [2]
박재성 2007/02/08  6193
106
   Q/A에 올렷던 '사용자함수(dll) 중복 감시기' 손봐서 이곳에 ...
바람 2007/06/23  4823
105
   우연히 만들다보니 이런팁이 생겨나네요.창위치.. [4]
강정훈 2007/08/03  5021
104
   CreateallCOM 에서 ActiveX 사용이 가능해질경우 가능한일 한... [5]
박재성 2007/08/11  4759
103
   현자의 코드 [3]
김제형 2007/11/12  5918
102
   워드2007의 진실.. [3]
박재성 2008/05/13  4866
101
   창조로 컴퓨터 제어? [2]
박재성 2008/05/25  4757

   [ㅎ메모] 창조만으로 알수없는 것을 API로 얻기
박종훈 2008/07/19  5723
99
   [초보자님들을 위해.. ㅎㅎ]주민등록번호로 암복호화키 만들기. [1]
한수훈 2008/11/08  5411
98
   [초보를 위해] 반복문 + 리스트박스 혼합 테스트
한수훈 2008/11/30  4764
97
   [플레이어_Series 01] Intro (미리듣기)
신용주 2009/01/04  4612
96
   [플레이어_Series 02] Fade in & Fade Out
신용주 2009/01/04  5145
95
   창조로 만들어진 두개의 프로그램을 연동하기..
권선중 2009/01/11  5082
94
   불필요한 파일을 제거하여, 속도를 높이자! [3]
신용주 2009/01/26  5265
93
   컨트롤 아이디 얻어올때..
박재성 2009/01/27  4639
LIST ALL   Prev [1][2][3][4][5][6][7][8][9] 10 ..[14] Next
Copyright 1999-2024 Zeroboard / skin by reedyfox in miniwini style
로그인
지우개 Expert 3.0
제작자 : 천호성 님 [LINK]
로그인
대박로또2005
제작자 : 최재일 님 [LINK]
로그인
1박종훈15292 점
2지상현8809 점
3손상진7388 점
4권선중6060 점
5이진백5174 점
로그인
가입일닉네임
05/31김동률
03/31홍형기
09/01o00pp99oo
12/27이재민
11/20이희철
로그인