TextDocument QML Type
TextEdit 의 뒷면 QTextDocument 을 감싸는 래퍼. 더 보기...
Import Statement: | import QtQuick |
In C++: | QQuickTextDocument |
Status: | Preliminary |
이 유형은 개발 중이며 변경될 수 있습니다.
속성
- errorString : string
(preliminary)
- modified : bool
(preliminary)
- source : url
(preliminary)
- status : enumeration
(preliminary)
방법
상세 설명
문서에 텍스트를 로드하려면 source 속성을 설정합니다. 사용자가 텍스트를 수정한 후 동일한 문서를 저장하려는 경우 save()를 호출하여 동일한 소스에 다시 저장합니다( it's a local file)에만 해당). 또는 saveAs()를 호출하여 다른 파일에 저장합니다.
이 클래스는 QML에서 인스턴스화할 수 없지만 TextEdit::textDocument 에서 사용할 수 있습니다.
참고: 지금은 모든 로딩과 저장이 동기식으로 이루어집니다. source 이 느린 네트워크 드라이브인 경우 UI가 차단될 수 있습니다. 이 문제는 향후 Qt 버전에서 개선될 수 있습니다.
참고: 이 API는 기술 미리보기로 간주되며 향후 Qt 버전에서 변경될 수 있습니다.
속성 문서
errorString : string |
modified : bool |
이 속성은 개발 중이며 변경될 수 있습니다.
이 속성은 문서를 마지막으로 로드하거나 저장한 이후 사용자가 문서를 수정했는지 여부를 보유합니다. 기본적으로 이 속성은 false
입니다.
QTextDocument::modified 와 마찬가지로 수정된 속성을 설정할 수 있습니다. 예를 들어 false
로 설정하면 source 속성을 다른 URL로 설정할 수 있습니다(따라서 사용자가 변경한 내용이 삭제됨).
이 속성은 Qt 6.7에 도입되었습니다.
QTextDocument::modified 를참조하세요 .
source : url |
이 속성은 개발 중이며 변경될 수 있습니다.
QQuickTextDocument Qt에서 지원하는 모든 텍스트 형식을 처리할 수 있으며, Qt에서 지원하는 모든 URL 체계에서 로드됩니다.
URL은 절대적이거나 컴포넌트의 URL에 상대적일 수 있습니다.
source
속성은 문서의 modified 상태가 true
인 동안에는 변경할 수 없습니다. 사용자가 문서 내용을 수정한 경우 사용자에게 save() 또는 modified = false
을 설정하여 변경 사항을 취소할지 여부를 묻는 메시지를 표시한 후 소스 속성을 다른 URL로 설정해야 합니다.
이 속성은 Qt 6.7에 도입되었습니다.
status : enumeration |
이 속성은 개발 중이며 변경될 수 있습니다.
이 속성은 문서 로드 또는 저장 상태를 보유합니다. 다음 중 하나가 될 수 있습니다:
상수 | 설명 |
---|---|
TextDocument.Null | 파일이 로드되지 않았습니다. |
TextDocument.Loading | source 에서 읽기 시작 |
TextDocument.Loaded | 읽기가 성공적으로 완료되었습니다. |
TextDocument.Saving | save() 또는 saveAs() 다음에 파일 쓰기가 시작되었습니다. |
TextDocument.Saved | 쓰기가 성공적으로 완료되었습니다. |
TextDocument.ReadError | 다음에서 읽는 동안 오류가 발생했습니다. source |
TextDocument.WriteError | save() 또는 saveAs()에서 오류가 발생했습니다. |
TextDocument.NonLocalFileError | saveAs()가 로컬 파일이 아닌 원격 리소스를 가리키는 URL로 호출되었습니다. |
이 상태를 사용하여 업데이트를 제공하거나 어떤 식으로든 상태 변경에 응답하세요. 예를 들면 다음과 같습니다:
- 상태 변경을 트리거합니다:
State { name: 'loaded' when: textEdit.textDocument.status == textEdit.textDocument.Loaded }
onStatusChanged
시그널 핸들러를 구현합니다:TextEdit { onStatusChanged: { if (textDocument.status === textDocument.Loaded) console.log('Loaded') } }
- 상태 값에 바인딩합니다:
TextEdit { id: edit width: 300 height: 200 textFormat: TextEdit.MarkdownText textDocument.source: "example.md" wrapMode: TextEdit.WordWrap Text { anchors { bottom: parent.bottom right: parent.right } color: edit.textDocument.status === TextDocument.Loaded ? "darkolivegreen" : "tomato" text: switch (edit.textDocument.status) { case TextDocument.Loading: return qsTr("Loading ") + edit.textDocument.source case TextDocument.Loaded: return qsTr("Loaded ") + edit.textDocument.source default: return edit.textDocument.errorString } } }
이 프로퍼티는 Qt 6.7에 도입되었습니다.
errorString, source, save() 및 saveAs()도 참조하십시오 .
메서드 문서
|
이 방법은 개발 중이며 변경될 수 있습니다.
source 에서 지정한 파일 및 형식과 동일한 파일에 콘텐츠를 저장합니다.
참고: file on a mounted filesystem 에만 저장할 수 있습니다.
이 메서드는 Qt 6.7에 도입되었습니다.
|
이 방법은 개발 중이며 변경될 수 있습니다.
url 에서 지정한 파일 및 형식으로 콘텐츠를 저장합니다.
url 의 파일 확장자는 파일 형식을 지정합니다( QMimeDatabase::mimeTypeForUrl()에 의해 결정됨).
참고: file on a mounted filesystem 에만 저장할 수 있습니다.
이 메서드는 Qt 6.7에 도입되었습니다.
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.