백엔드 개발 PHP 튜토리얼 신틸라 사용자 안내서(2) - 전문 검색 및 수정

신틸라 사용자 안내서(2) - 전문 검색 및 수정

Jan 17, 2017 am 10:26 AM

Scintilla에서는 각 문자 뒤에 문자 스타일을 나타내는 바이트가 옵니다. 문자 바이트와 스타일 바이트가 함께 문자 단위를 형성합니다. 스타일 바이트의 8비트는 문자 스타일과 문자 표시기라는 두 부분으로 나뉩니다. 텍스트의 문자 표시는 SCI_INDICATORFILLRANGE 메시지를 통해 설정할 수 있다. 기본적으로 하위 5비트는 문자 스타일이고 상위 3비트는 문자 표시기입니다. 따라서 32개의 문자 스타일이 있을 수 있습니다. 구문 오류, 더 이상 사용되지 않는 이름, 잘못된 들여쓰기 및 기타 정보를 나타내는 데 사용할 수 있는 3개의 독립 문자 표시기입니다. SCI_SETSTYLEBITS 메시지를 사용하여 문자 스타일 비트를 최대 7비트까지 설정할 수 있으며 나머지는 문자 표시기에 할당됩니다.
위치는 신틸라에서 문자의 위치나 문자 앞의 공백 지점을 나타낸다. 첫 번째 문자의 위치는 0이고 두 번째 문자의 위치는 1입니다. 문서에 nLen 문자가 포함된 경우 마지막 문자의 위치는 nLen – 1입니다. 커서는 두 문자 사이에 존재하며 첫 번째 문자(0) 앞과 마지막 문자(nLen) 뒤에 위치할 수 있습니다.
두 문자를 하나의 문자로 처리할 경우 두 문자 사이에는 커서가 존재할 수 없습니다. 이러한 상황은 일반적으로 중국어와 같은 멀티바이트 문자나 줄 종결자가 CRLF인 경우에 발생합니다. 상수 INVALID_POSITION(-1)은 잘못된 위치를 나타냅니다.
성능상의 이유로 텍스트의 모든 줄은 동일한 높이, 즉 현재 스타일에서 가장 큰 글꼴의 높이를 갖습니다.

SCI_GETTEXT, SCI_SETTEXT
로그인 후 복사

1) SCI_GETTEXT(int length, char *text)
텍스트 가져오기:
(1) 텍스트가 0이면 전체 문서 길이 len + 1을 반환합니다. (2) 길이가 0이면 0을 반환합니다.
(3) 텍스트가 0이 아니고 길이가 0보다 크면 길이 – 1을 반환하고 텍스트는 위치 0부터 시작하는 길이 – 1 문자와 0 종결자로 채워집니다. . 길이가 문서 길이보다 길면 추가 위치는 널 문자 0으로 채워집니다.


unsigned int len = SendMessage(SCI_GETTEXT, 0, 0);
char *chText = new char[len];
SendMessage(SCI_GETTEXT, len, (LPARAM)chText);
…
delete [] chText;
로그인 후 복사

2) SCI_SETTEXT(, const char *text)

문서 텍스트를 0으로 끝나는 상수 문자열인 text로 설정합니다. 텍스트가 0이면 FALSE(0)를 반환하고, 그렇지 않으면 TRUE(1)를 반환합니다.

SCI_SETSAVEPOINT
SCI_SETSAVEPOINT
로그인 후 복사

저장 지점을 설정하면 문서 상태가 수정되지 않고 TRUE(1)를 반환합니다. SCI_SETSAVEPOINT 메시지는 SCN_SAVEPOINTREACHED 이벤트 알림을 트리거합니다. 문서 상태가 수정됨으로 변경되면 SCN_SAVEPOINTLEFT 이벤트 알림이 트리거됩니다.


SCI_GETLINE

SCI_GETLINE(int line, char *text)

지정된 줄의 텍스트를 가져오고 지정된 줄의 텍스트 길이를 반환합니다(다음 줄 포함). 터미네이터). 줄 번호 line은 0부터 시작합니다. 줄 번호가 최대 줄 번호보다 크면 0이 반환됩니다. text가 0이면 지정된 텍스트 줄의 길이가 직접 반환되고, text가 0이 아닌 경우 텍스트는 지정된 텍스트 줄로 채워지지만 종결자 0은 자동으로 설정되지 않습니다.

unsigned int len = SendMessage(SCI_GETLINE, 1, 0);
char *chText = new char[len + 1];
memset(chText, 0, len + 1);SendMessage(SCI_GETLINE, 1, (LPARAM)chText);
…delete [] chText;
로그인 후 복사
SCI_REPLACESEL

SCI_REPLACESEL(, const char *text)

선택한 텍스트를 바꿉니다. text는 0으로 끝나는 상수 문자열입니다. 텍스트를 선택하지 않으면 현재 위치에 텍스트가 삽입됩니다. 교체 후 커서는 삽입된 텍스트 뒤에 있게 되며 뷰는 자동으로 스크롤되어 텍스트가 표시됩니다. 텍스트가 0이면 FALSE(0)를 반환하고, 그렇지 않으면 TRUE(1)를 반환합니다.

SCI_SETREADONLY, SCI_GETREADONLY

1) SCI_SETREADONLY(bool readOnly)

문서를 읽기 전용으로 설정하고 TRUE(1)를 반환합니다. 문서가 읽기 전용 상태일 때 문서가 수정되면 SCN_MODIFYATTEMPTRO 이벤트 알림이 트리거됩니다.
2) SCI_GETREADONLY
문서의 읽기 전용 상태를 가져오고 TRUE(1) 또는 FALSE(0)를 반환합니다.

SCI_GETTEXTRANGE

SCI_GETTEXTRANGE(, TextRange *tr)

지정된 텍스트 범위를 가져옵니다. tr이 0이면 0을 반환하고, 그렇지 않으면 텍스트 길이를 반환합니다. (0 종결자는 포함되지 않음) tr.lpstrText를 지정된 텍스트 범위와 0 종결자로 채웁니다. tr.chrg.cpMax가 -1이면 문서의 끝을 의미합니다. tr.lpstrText 문자 버퍼가 충분히 큰지 확인해야 합니다((tr.chrg.cpMax - tr.chrg.cpMin) + 1).

SCI_GETSTYLEDTEXT

SCI_GETSTYLEDTEXT(, TextRange *tr)

SCI_GETTEXTRANGE와 유사하지만, 필요한 문자 버퍼 크기는 SCI_GETTEXTRANGE입니다. 2번(2 * (tr.chrg.cpMax - tr.chrg.cpMin) + 2). 신틸라는 tr.lpstrText 끝에 두 개의 0 종결자를 자동으로 추가합니다.

SCI_ALLOCATE

SCI_ALLOCATE(int bytes, )

지정된 크기의 바이트를 수용할 수 있을 만큼 큰 버퍼를 할당하고 TRUE(1)를 반환합니다. 버퍼는 지정된 크기가 현재 버퍼 크기보다 큰 경우에만 재할당되며, 그렇지 않으면 처리가 수행되지 않습니다.

SCI_ADDTEXT

SCI_ADDTEXT(int length, const char *s)

현재 위치에 지정된 텍스트의 지정된 길이를 삽입합니다. s는 0으로 끝나는 상수 문자열입니다. , 0을 반환합니다. 텍스트를 삽입한 후 현재 위치는 삽입된 텍스트 뒤에 있지만 뷰가 자동으로 스크롤되어 표시되지는 않습니다.

SCI_ADDSTYLEDTEXT

SCI_ADDSTYLEDTEXT(int length, cell *s)

현재 위치에 스타일 텍스트를 삽입하고, 처리 방법은 SCI_ADDTEXT와 유사하며, 0을 반환한다.

SCI_APPENDTEXT

SCI_APPENDTEXT(int length, const char *s)

문서 끝에 텍스트를 삽입한다. 처리 방법은 SCI_ADDTEXT와 유사하며, 0이 반환된다. .

SCI_INSERTTEXT

SCI_INSERTTEXT(int pos, const char *text)
지정된 위치에 텍스트를 삽입한다. 처리 방법은 SCI_ADDTEXT와 유사하며 0을 반환한다. pos가 -1이면 현재 위치에 삽입한다는 뜻이다.

SCI_CLEARALL

SCI_CLEARALL
문서가 읽기 전용이 아닌 이상 문서에서 모든 문자를 삭제하고 0을 반환합니다.

SCI_CLEARDOCUMENTSTYLE

SCI_CLEARDOCUMENTSTYLE
문서의 모든 스타일 정보를 지우고 0을 반환합니다. 이는 일반적으로 문서 스타일을 변경해야 할 때 사용됩니다.

SCI_GETCHARAT

SCI_GETCHARAT(int position)
지정된 위치의 문자를 반환합니다. position이 0보다 작거나 문서 끝보다 크면 0이 반환됩니다.

SCI_GETSTYLEAT

SCI_GETSTYLEAT(int position)
지정된 위치의 스타일을 반환합니다. position이 0보다 작거나 문서 끝보다 크면 0이 반환됩니다.

SCI_SETSTYLEBITS, SCI_GETSTYLEBITS

1) SCI_SETSTYLEBITS(int 비트)
스타일 비트 너비를 바이트 단위로 설정하고 TRUE(1)를 반환합니다. 기본값은 5비트이고 최대값은 7비트로 설정할 수 있습니다. 나머지 비트는 문자 표시를 나타내는 데 사용됩니다.
2) SCI_GETSTYLEBITS
스타일 비트 너비를 바이트 단위로 반환합니다.

SCI_TARGETASUTF8 *

SCI_TARGETASUTF8(, char *s)
대상 문자열을 UTF8 인코딩 형식으로 변환하고, 인코딩된 텍스트 길이를 반환하고, 바이트를 인코딩합니다. s로 채워집니다. 이 메시지는 GTK+ 플랫폼에서만 사용할 수 있습니다.

SCI_ENCODEDFROMUTF8 *

SCI_ENCODEDFROMUTF8(const char *utf8, char *encoded)
UTF8 형식 문자열을 문서 인코딩 형식으로 변환하고 변환된 바이트 길이를 반환하고 변환된 바이트 길이를 채웁니다. 바이트를 인코딩합니다. 이 메시지는 GTK+ 플랫폼에서만 사용할 수 있습니다.

SCI_SETLENGTHFORENCODE

SCI_SETLENGTHFORENCODE(int bytes)
문서 인코딩 길이를 설정하고 0을 반환합니다.

위 내용은 Scintilla User Guide(2) 내용입니다. - 전문 검색 및 수정에 대한 자세한 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!


본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

딩톡 그룹 내 개인 이름 변경 방법_딩톡 그룹 내 개인 이름 수정 방법 딩톡 그룹 내 개인 이름 변경 방법_딩톡 그룹 내 개인 이름 수정 방법 Mar 29, 2024 pm 08:41 PM

1. 먼저 딩톡을 실행하세요. 2. 그룹 채팅을 열고 오른쪽 상단에 있는 점 3개를 클릭하세요. 3. 이 그룹에서 내 닉네임을 찾아보세요. 4. 입력하여 수정하고 저장하려면 클릭하세요.

사용자 폴더 이름을 변경하는 방법: Win11 튜토리얼 사용자 폴더 이름을 변경하는 방법: Win11 튜토리얼 Jan 09, 2024 am 10:34 AM

일부 게임은 사용자 폴더에 자동으로 설치되며 영어 폴더가 필요합니다. 그러나 많은 친구들은 win11에서 사용자 폴더 이름을 수정하는 방법을 모릅니다. 실제로 사용자 이름만 수정하면 됩니다. win11에서 사용자 폴더 이름 수정: 첫 번째 단계는 키보드에서 "Win+R" 키 조합을 누르는 것입니다. 두 번째 단계에서는 "gpedit.msc"를 입력하고 Enter 키를 눌러 그룹 정책 편집기를 엽니다. 3단계: "Windows 설정" 아래의 "보안 설정"을 확장합니다. 4단계: "로컬 정책"에서 "보안 옵션"을 엽니다. 5단계: 오른쪽의 "계정: 시스템 관리자 계정 이름 바꾸기" 정책을 두 번 클릭하여 엽니다. 6단계: 아래에 수정하려는 폴더 이름을 입력하고 "확인"을 클릭하여 저장하세요. 사용자 폴더 수정

Douyin Blue V가 이름을 바꿀 수 있나요? 기업 Douyin Blue V 계정의 이름을 변경하는 단계는 무엇입니까? Douyin Blue V가 이름을 바꿀 수 있나요? 기업 Douyin Blue V 계정의 이름을 변경하는 단계는 무엇입니까? Mar 22, 2024 pm 12:51 PM

Douyin Blue V 인증은 Douyin 플랫폼에 있는 회사 또는 브랜드의 공식 인증으로 브랜드 이미지와 신뢰성을 높이는 데 도움이 됩니다. 기업 개발 전략 조정 또는 브랜드 이미지 업데이트로 인해 회사는 Douyin Blue V 인증의 이름을 변경할 수 있습니다. 그럼 Douyin Blue V가 이름을 바꿀 수 있을까요? 대답은 '예'입니다. 이 글에서는 기업 Douyin Blue V 계정의 이름을 수정하는 단계를 자세히 소개합니다. 1. Douyin Blue V의 이름을 변경할 수 있나요? Douyin Blue V 계정의 이름을 변경할 수 있습니다. Douyin의 공식 규정에 따라 기업 Blue V 인증 계정은 특정 조건을 충족한 후 계정 이름 변경을 신청할 수 있습니다. 일반적으로 기업은 이름 변경의 적법성과 필요성을 입증하기 위해 영업 허가증, 조직 코드 인증서 등과 같은 관련 지원 자료를 제공해야 합니다. 2. 기업 Douyin Blue V 계정의 이름을 수정하려면 어떤 단계를 거쳐야 합니까?

win11 창 모서리를 둥근 모서리로 수정하는 방법 안내 win11 창 모서리를 둥근 모서리로 수정하는 방법 안내 Dec 31, 2023 pm 08:35 PM

win11 시스템을 업데이트한 후 많은 친구들은 win11 인터페이스 창이 새로운 둥근 모서리 디자인을 채택한다는 것을 발견했습니다. 그런데 이런 둥근 모서리 디자인이 마음에 들지 않아 이전 인터페이스로 수정하고 싶은데 어떻게 수정해야 할지 모르시는 분들도 계시는데요. 아래에서 살펴보겠습니다. win11에서 둥근 모서리를 수정하는 방법 1. win11의 둥근 모서리 디자인은 현재 수정할 수 없는 내장 시스템 설정입니다. 2. 따라서 win11의 둥근 모서리 디자인을 사용하는 것이 마음에 들지 않으면 Microsoft가 수정 방법을 제공할 때까지 기다릴 수 있습니다. 3. 실제로 익숙하지 않은 경우 이전 win10 시스템으로 돌아가도록 선택할 수도 있습니다. 4. 롤백 방법을 모르는 경우 이 사이트에서 제공되는 튜토리얼을 확인하세요. 5. 위의 튜토리얼을 사용하여 돌아갈 수 없는 경우에도 다음을 수행할 수 있습니다.

PyCharm 배경색 조정 팁: 빠르게 익히세요! PyCharm 배경색 조정 팁: 빠르게 익히세요! Feb 03, 2024 am 09:39 AM

PyCharm의 배경색을 수정하는 기술을 빠르게 익히려면 구체적인 코드 예제가 필요합니다. 최근에는 프로그램 개발 분야에서 Python 언어가 점점 더 대중화되고 있으며, PyCharm은 통합 개발 환경(IDE)으로 사용됩니다. , 대다수의 개발자가 사랑하고 사용합니다. PyCharm에서 일부 개발자는 배경색 변경을 포함하여 IDE 인터페이스를 개인화하는 경우가 많습니다. 이 기사에서는 PyCharm의 배경색을 수정하는 기술을 소개하고 독자가 이 기술을 빠르게 익힐 수 있도록 구체적인 코드 예제를 제공합니다.

Win11 전원 모드 수정 위치 및 방법 Win11 전원 모드 수정 위치 및 방법 Dec 30, 2023 pm 05:25 PM

win11 시스템에서는 전원 모드를 수정하여 배터리 소모를 줄이거나 시스템 성능을 향상시킬 수 있습니다. 설정 방법은 매우 간단합니다. 전원 옵션을 찾으면 편집기를 따라 구체적인 작동 과정을 살펴보겠습니다. win11에서 전원 모드를 수정하는 방법 1. 먼저 작업 표시줄의 가장 왼쪽 버튼을 클릭하여 시작 메뉴를 엽니다. 2. 그런 다음 시작 메뉴 위에서 "제어판"을 검색하여 엽니다. 3. 제어판에서 "하드웨어 및 소리"를 찾을 수 있습니다. 4. 하드웨어 및 소리를 입력하고 전원 옵션에서 "전원 계획 선택"을 클릭합니다. 에서 전원 모드를 수정하여 균형 잡힌 에너지 절약 모드를 선택하거나 숨겨진 추가 계획을 확장하고 고성능 모드를 선택할 수 있습니다.

Win10 절전 시간 수정 팁 공개 Win10 절전 시간 수정 팁 공개 Mar 08, 2024 pm 06:39 PM

Win10 절전 시간 수정 팁 공개 현재 널리 사용되는 운영체제 중 하나인 Windows 10에는 사용자가 컴퓨터를 사용하지 않을 때 전원을 절약하고 화면을 보호할 수 있도록 절전 기능이 있습니다. 그러나 기본 절전 시간이 사용자의 요구 사항을 충족하지 못하는 경우도 있으므로 Win10 절전 시간을 수정하는 방법을 아는 것이 특히 중요합니다. 이 문서에서는 Win10의 절전 시간을 수정하여 시스템의 절전 설정을 쉽게 사용자 지정할 수 있는 팁을 공개합니다. 1. "설정"을 통해 Win10 절전 시간 수정 먼저, 가장 간단한 수정

Windows 10 작업 표시줄 색상을 변경하는 방법 Windows 10 작업 표시줄 색상을 변경하는 방법 Jan 01, 2024 pm 09:05 PM

win10 작업 표시줄 색상을 수정하는 것은 매우 간단하지만 실제로는 매우 간단합니다. 색상을 변경할 수 없는 경우 주의하세요. 세부 설정에 들어갑니다. win10 작업 표시줄 색상 변경 방법 1단계: 바탕 화면에서 마우스 오른쪽 버튼 클릭 - 개인 설정 클릭 2단계: 색상 영역 사용자 정의 3단계: 원하는 색상 선택 PS: 색상을 변경할 수 없는 경우 색상 -> 클릭 색상 -> 사용자 정의 -> 기본 창 모드를 선택하고 어두운 색상을 선택합니다.

See all articles