TextDocument QML Type

TextEdit のバックのラッパーQTextDocumentさらに...

Import Statement: import QtQuick
In C++: QQuickTextDocument
Status: Preliminary

この型は開発中であり、変更される可能性がある。

プロパティ

メソッド

  • void save() (preliminary)
  • void saveAs(url url) (preliminary)

詳細説明

テキストをドキュメントに読み込むには、source プロパティを設定します。その後、ユーザーがテキストを変更し、同じドキュメントを保存したい場合は、save() を呼び出して、同じソースに再度保存します(it's a local file の場合のみ)。または、saveAs() を呼び出して、別のファイルに保存します。

このクラスはQMLの中でインスタンス化することはできませんが、TextEdit::textDocument から利用することができます。

注意: 今のところ、読み込みと保存はすべて同期的に行われます。このため、source が低速なネットワークドライブの場合、UIがブロックされる可能性があります。これは Qt の将来のバージョンで改善されるかもしれません。

注意: この API は技術プレビューであり、Qt の将来のバージョンで変更される可能性があります。

プロパティのドキュメント

errorString : string [read-only, preliminary]

このプロパティは開発中であり、変更される可能性があります。

このプロパティは、読み込み中または保存中に発生したエラーを説明する、人間が読める文字列を保持します。

このプロパティは Qt 6.7 で導入されました。

status,source,save(),saveAs()も参照してください


modified : bool [preliminary]

このプロパティは開発中であり、変更される可能性があります。

このプロパティは、ドキュメントが最後にロードまたは保存されたときから、ユーザーによって変更されたかどうかを保持します。デフォルトでは、このプロパティはfalse です。

QTextDocument::modified と同様に、modified プロパティを設定することができます。例えば、false に設定すると、source プロパティを別の URL に設定することができます(したがって、ユーザーの変更は破棄されます)。

このプロパティは Qt 6.7 で導入されました。

QTextDocument::modifiedも参照してください


source : url [preliminary]

このプロパティは開発中であり、変更される可能性があります。

QQuickTextDocument は、Qt がサポートする URL スキームからロードされた、Qt がサポートするあらゆるテキスト形式を扱うことができます。

URL は、絶対 URL でも、コンポーネントの URL からの相対 URL でもかまいません。

ドキュメントのmodified の状態がtrue の間は、source プロパティを変更することはできません。ユーザーがドキュメントの内容を変更した場合は、save() をユーザーに促すか、または source プロパティを別の URL に設定する前にmodified = false を設定して変更を破棄する必要があります。

このプロパティは Qt 6.7 で導入されました。

QTextDocumentWriter::supportedDocumentFormats()も参照してください


status : enumeration [read-only, preliminary]

このプロパティは開発中であり、変更される可能性があります。

このプロパティは、ドキュメントの読み込みまたは保存の状態を保持します。以下のいずれかになります:

定数説明
TextDocument.Nullファイルが読み込まれていない
TextDocument.Loadingsource からの読み込みが開始された
TextDocument.Loaded読み込みが正常に終了した
TextDocument.Savingsave() またはsaveAs() の後にファイルの書き込みが開始された。
TextDocument.Saved書き込みが正常に終了しました
TextDocument.ReadErrorからの読み込み中にエラーが発生しました。source
TextDocument.WriteErrorsave() またはsaveAs() でエラーが発生しました。
TextDocument.NonLocalFileErrorsaveAs() が、ローカル・ファイルではなくリモート・リソースを指す 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()も参照してください


メソッドのドキュメント

[preliminary] void save()

このメソッドは開発中であり、変更される可能性があります。

source で指定されたファイルと同じフォーマットに内容を保存します。

注意: file on a mounted filesystem にのみ保存できます。

このメソッドは Qt 6.7 で導入されました。

source およびsaveAs()も参照してください


[preliminary] void saveAs(url url)

このメソッドは開発中であり、変更される可能性があります。

url で指定されたファイルとフォーマットに内容を保存します。

url のファイル拡張子は、ファイル形式を指定します(QMimeDatabase::mimeTypeForUrl() によって決定されます)。

注意: file on a mounted filesystem にのみ保存できます。

このメソッドは Qt 6.7 で導入されました。

sourcesave()も参照してください


本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。