首页| 论坛| 消息

标题:qt中toolBox控件使用问题
作者:w0zg
日期:2006-12-25 11:50
内容:

小弟刚开始学习qt,现在想使用toolBox控件做一个小程序,但不知怎么往每个栏目中加子栏目,请高手们给一段实例代码看看,谢谢!


#1 [XChinux 12-25 23:49]
参考一下下面的代码:
QSqlQuery q;
q.exec("SELECT moduleid, title, titleshort FROM module");
while (q.next())
{
QWidget *widget = new QWidget;
QVBoxLayout *layout = new QVBoxLayout;
layout->setSpacing(1);
layout->setMargin(1);
QSqlQuery q2;
q2.exec("SELECT title, titleshort, functype, funcid FROM modulefunc WHERE moduleid = '" + q.value(0).toString() + "'");
while (q2.next())
{
FuncToolButton *button = new FuncToolButton(q.value(0).toString(), q2.value(2).toInt(), q2.value(3).toInt());
button->setAutoRaise(true);
button->setIcon(QIcon("../img/ex1.png"));
button->setIconSize(QSize(48, 48));
button->setText(q2.value(0).toString());
button->setToolButtonStyle(Qt::ToolButtonTextUnderIcon);
button->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
connect(button, SIGNAL(clicked(QString, int, int, QString)), this, SLOT(on_actionAct_triggered(QString, int, int, QString)));
layout->addWidget(button);
}
q2.clear();
layout->addItem(new QSpacerItem(toolBox->width(), toolBox->height(), QSizePolicy::Minimum, QSizePolicy::Expanding));
widget->setLayout(layout);
toolBox->addItem(widget, QIcon("../img/ex1.png"), QString("%1").arg(q.value(1).toString()));
}
q.clear();

回复 发表
主题 版块