2017-02-06 5 views
2

Qtが初めてです。私はRichTextBoxMicrosoft rich text formatのテキストを表示するC#でwinformアプリケーションを持っています。 RichTextBoxは、太字のイタリック体のテキストや画像を挿入するなど、豊富なテキストを書くことができるコントロールです...Qt Quickを使用してリッチテキスト形式(rtf)を表示する方法は?

qt quickでアプリケーションを書いていますが、表示方法はわかりませんそれは制御しますか?これが不可能な場合は、Qtのrtfの置き換えは何ですか? (例えば、htmlや...?)では、rtfをhtmlに変換し、htmlをそのコントロールにバインドして表示することができます。

+0

@NicolasHolthausあなたのリンクは「QtWidgets」であり、「QtQuick」ではないことにご注意ください。 – derM

+1

@derM ** bold ** qtクイックコメントがどのように欠落しているか分かりません。それを指摘してくれてありがとう。 –

答えて

-1

QTexteditウィジェットを使用してください。それはhtmlもサポートしています。

QTextEdit* te = new QTextEdit(this); 
te->setAcceptRichText(true); 
te->setText(myText); 
+0

これはQtWidgetですが、OPはqtquickについて質問していました。これはQMLを意味します。 – DuKes0mE

+0

しかし、私はqtクイックノートウィジェットにしたいです。 – mohsen

2

私は何RichTextBox申し出わからないが、2つのオプションがあります。TextField、あなたのユーザーは、単に複数の行とHTMLサポートを含むテキストを表示するテキスト、およびTextを入力することができます入力ボックスを提供しています。

つのコード例では、ここで見ることができます:

import QtQuick 2.7 
import QtQuick.Controls 1.4 
import QtQuick.Window 2.2 

// Filename.qml 
Window { 
    width: 640 
    height: 480 

    TextField { 
     placeholderText: "I am a TextFiel" 
    } 

    Text { 
     anchors.centerIn: parent 
     text: "And I am a Text" 
    } 
} 

このコードsnippletは左上と中央にText -itemでTextFieldで新しいWindowを作成します。これをQtCreatorで開き、Designer-Tabに移動して表示することができます。

また、Qt自身が提供するqmlsceneというツールでこのコードを実行することもできます。あなたの(Windows)マシンにQtをインストールし、あなたのPATH環境変数を例えばに設定した場合。 "C:\ Qt \ 5.7 \ msvc2013 \ bin"(Windowsの場合)、これをコマンドラインで実行することもできます。ですから、Alt + Shift +右クリック(ファイルの横のスペースでどこか)を押すことができ、「ここでコマンドウィンドウを開きます」を選択し、タイプ:

qmlscene Filename.qml

1

ダームが指摘したようにあなただけのリッチテキストを表示したい場合は

TextEdit { 
    width: 240 
    text: "<b>Hello</b> <i>World!</i>" 
    font.family: "Helvetica" 
    font.pointSize: 20 
    color: "blue" 
    focus: true 
} 

そして:アウト、QMLでのMicrosoft *の.rtf形式はサポートされていませんが、あなたは、プレーンリッチテキストを持っているときのケースのために、あなたはQMLの参照からのソリューションを使用することができます:

Text { 
    text: "My <b>rich</b> text" 
    textFormat: Text.RichText 
} 
+1

これは「RichText」と呼ばれていますが、別のものを持つ[Microsoft Rich Text Format](https://en.wikipedia.org/wiki/Rich_Text_Format)を出力するように求めています。マークアップ。 OPのためにRTFからHTMLへの翻訳者を書くのに役立つはずですが、あなたの答えはまだ+1です。あなたは、QMLで実装されたRTFサポートがないという回答を追加するかもしれません。 – derM

関連する問題