昨日、ubuntu11.10にアップグレードしました。そしてNetBeansが消え去りました。そんでもって使いづらいunityにユーザーインターフェイスが変更されてしまいました。見た目重視というかなんというか、とにかく使いにくいです。アイコン大きくするだけでClassicのほうが配置はよかったんじゃないのか?というかNetBeansはいずこへ...。しょうがないので公式サイトから7.0.1をダウンロードしインストール。無事元の開発環境に戻りました。
ついでに sudo apt-get install gnome-panel でクラッシック表示に戻しました。さらばunity。
はい、それでは今回はQTreeWidgetを使用します。※コンビニエンスクラスは前回説明済
C++ GUI Programming with Qt4にもサンプルは載っていますが、長いので独自のものを使います。サンプルのQTreeWidgetはQtCreaterなどで貼り付け、あるいは記述済みであるとします。(QtCreaterの使い方などは"Qtをはじめよう"を見てください。)
それではコードを
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow)//uiにはGUI部品類が記述 { ui->setupUi(this);//uiにてGUI部品の初期化 QStringList list;//QTreeWidgetのヘッダ名が入る list << "Key" << "Value"; ui->treeWidget->setColumnCount(2);//列の数をセット ui->treeWidget->setHeaderLabels(list);//先ほどのlistをヘッダ名にセット QTreeWidgetItem *item = new QTreeWidgetItem;//セットするアイテム QTreeWidgetItem *child = new QTreeWidgetItem;//itemの子となるアイテム item->setText(0,"item");//0列目に"item"というテキストセット item->setText(1,"1");//1列目に"1"というテキストセット child->setText(0, "child item");//0列目に"child item"というテキストセット item->addChild(child);//itemの子にchildをセット ui->treeWidget->insertTopLevelItem(0, item);//QTreeView0行目にitemをセット }
※uiにはGUI部品類が記述されているだけです。説明は省略します。
コメントの通りです。簡単ですね。
QtCreaterではほとんど意識しませんが、一応宣言方法例も
QTreeWidget *treeWidget;
QMainWindow w;
w.setCentralWidget(treeWidget);//メインウインドウへ登録
実行すると以下のようになります。
以上です。