質問

プロセスエクスプローラーと同じように、TreeList Controlを実装する必要があります。私はGUIの初心者であり、そのような複雑なコントロールを書いていませんでした。

プロセスエクスプローラーに見られるように、子供を含むThreelistWindowclassがあります。2つのヘッダー、3つのスクロールバー(そのうちの1つは見えないのですか?)、1つの静的(目に見えるスクロールバーの間の場所)。私が理解しているように、メインコントロールはそれ自体のすべてのアイテムを描画します。また、添付のdllでmfcxxx.dllを見つけませんでした。

質問1:どのフレームワークを使用する方が良いですか? MFC、WTL、Plain Winapi…この実装を見てみましょう http://www.codeguru.com/cpp/controls/treeview/classes/article.php/c13167 また、巨大な構造を持つCPPファイルの8000行以上のコードと混同されました(そのうちの1人には80人のメンバーが含まれています)。それは単純なウィナピ(および++なしでC)です。私は間違いなくOOPスタイルを使いたいです。 =)

質問2:このコントロールの高レベルの設計は何ですか?詳細がなければ、このコントロールをどのように設計すべきかを説明できますか?

私の制限:C ++、VS10、OS:Vista以上。

前もって感謝します

役に立ちましたか?

解決

私は最近これを行い、からのマルチカラムツリービューを使用しました http://www.mimec.org/articles/mfc/mctree

Screenshot of Multi-Column Tree View

それはかなり基本的ですが、それは私のニーズを満たし、かなりコンパクトです。それはaを提供します CColumnTreeView のサブクラスであるクラス CView - したがって、MFCの標準のCDoCument/CViewパターンで正しく動作します。

他のヒント

プロセスエクスプローラーの「ツリーリストビュー」に相当する正確な同等物を見つけることができます プロセスハッカー'のソース(これはaです 多く より良い私見です。)

QTは、完全に機能するライブラリです qtreewidget それはあなたのプログラムの要件を満たしているようです。
enter image description here

Devexpressにはいくつかの優れたツリーリストコントロールがありますが、それらはC#で書かれています。ただし、C ++/CLIまたは管理されたC ++を使用してそれらをターゲットにすることができます。そのため、アプリを管理できるかどうかはわかりません。だからおそらくそれはそれほど役に立たないかもしれません。

無料の樹木師のコントロールに関しては、バグとサポートの欠如のために、私は彼らから離れようとしています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top