2012-05-07 15 views
2

私はまだQTで新しいですが、実際にはまだ始まっていませんが、QTユーザーインターフェイスからXMLファイル(マークアップとノードなど)を作成しようとしています。QTウィジェットとQT GUI

たとえば、ユーザは私のインターフェースのテキストフィールドに従業員の名前、ID、年齢を挿入できる場所を見つけることができ、プログラムはその名前、ID、年齢の出力xmlファイルの従業員ノードにそれを送ります。私はC++でコーディングしているので、QT GUIとしてこのインターフェースを作成したかったのですが、QT作成者がQTウィジェットという名前のプロジェクトを同じオプションで提供していることがわかりました。

私は今混乱しているので、私は彼らの違いを知りませんので、私が選ぶことができます。 私は男からの助けを感謝します。

答えて

2

あなたの質問を正しく理解していれば、QtウィジェットはGUIの多くのアイテムの1つである小さな要素です(ボタン、コンボボックスはすべてウィジェットです)。 Qtウィジェット、プロジェクトタイプは1つを作成するためのもので、別のプロジェクトインターフェースで使用できます。

Qt Guiはあなたが望むプロジェクトタイプの可能性が高いので、多くのウィジェットでドラッグして「インターフェーステキストフィールド」を作成できます。

さらに高度なカスタマイズを行う必要がある場合や、独自のテキストフィールドコントロールを作成する必要がある場合は、Qtウィジェットプロジェクトタイプを使用します。

+0

私はこれが彼らが意味しているとは思わない。 Qt Creatorの「プロジェクトの作成」ダイアログには、「Qt Gui Application」と「Mobile Qt Application」を選択肢として持つQt Widget Projectというカテゴリがあります。別のカテゴリは、私が彼らが求めていると思っている「Qtクイックプロジェクト」です。 QWidgetベースのプロジェクトが必要な場合は、Qt GUIアプリケーションウィザードの基本クラスとして選択しますが、私はそれらが遠くにあるとは思わない... – teukkam

+0

私はウィジェットプロジェクトに行くつもりだと思う - 「Qt Gui Application」は、QMLでコーディングするよりも簡単に聞こえるので、エラーは発生しません。 – Glolita

3

あなたはQt Quick vs. Qt Widgetsを意味しますか?

Qt Quickは、QMLとして知られる宣言型マークアップ言語から作成された、より新しいタイプのQt GUIです。 QMLソースは、C++ソースコードからネイティブ実行可能コードにコンパイルされたQtウィジェットとは対照的に、実行時に解釈されます。 Qt Quickには、QMLに加えて、UIをスクリプト化するためのインラインJavascriptが使用されていますが、より複雑な処理のためにC++からインタフェースすることができます(通常はそうです)。

EDIT:Qt Quickはまた、(少なくとも現在の状態では)非常にタッチ指向ですが、QtウィジェットGUIは、より豊富なUI要素のセットを提供します。デスクトップアプリケーションを作成している場合は、Qt Quickだけを残しておきたいかもしれません。

+0

QMLはDotNETのXAML言語のようなものなので、入力コンポーネントとデータをバインドするために使用できます。初心者の方はQMLを使用することをお勧めしますか? – Glolita

+0

それは似ています。しかし、QMLはXAMLよりはるかに制限されています。実際にはXAMLはおそらくQtの.uiファイルに近いでしょう。それらはQt Designerで作成されたフォームを格納するために使用されるXMLファイルであり、通常は手で直接操作されません。 Qt Creatorでは、Qt Designer以外の.uiファイルを編集することはできません。 – teukkam

+1

ここにQMLコンポーネントのリストを見てください:http://doc.qt.nokia.com/4.7-snapshot/qdeclarativeelements.htmlあなたのニーズに合っていると思うなら、それを是非使ってください。例えば、Qt Designerを使って作られたGUIの中に、常にQML要素を埋め込むことができます。具体的な例を作るために、Qtには直接 "プッシュボタン"要素はありません。代わりに、RectangleやImageなどのグラフィック要素をMouseAreaと組み合わせて使用​​するだけで、ボタンのように動作させることができます。 – teukkam

関連する問題