问:是否可以创建类似于Windows 7开始菜单的小部件?

时间:2015-07-09 09:37:27

标签: c++ qt windows-7

我想在Qt中创建一个类似于Windows 7开始菜单的小部件。 但这是指一个垂直的按钮列表,当悬停在上面/点击时,它会将选项列表扩展到右侧

我想到实现这一目标的一种方法是将QComboBox弹出窗口扩展到组合框的右侧,而不是低于它,但我不知道如何做或者甚至可能:

QApplication a(argc, argv);
QDialog *w = new QDialog();

QHBoxLayout *mainLayout = new QHBoxLayout();
QVBoxLayout *ComboBoxLayout = new QVBoxLayout();

mainLayout->addLayout(ComboBoxLayout);
mainLayout->addStretch();

QComboBox *box1 = new QComboBox(w);
QComboBox *box2 = new QComboBox(w);
QComboBox *box3 = new QComboBox(w);

box1->addItem("Option 1");
box1->addItem("Option 2");
box1->addItem("Option 3");

box2->addItem("Option 1");
box2->addItem("Option 2");
box2->addItem("Option 3");

box3->addItem("Option 1");
box3->addItem("Option 2");
box3->addItem("Option 3");

ComboBoxLayout->addWidget(box1);
ComboBoxLayout->addWidget(box2);
ComboBoxLayout->addWidget(box3);
ComboBoxLayout->addStretch();

w->setGeometry(200, 200, 200, 200);
w->setLayout(mainLayout);
w->show();

如果您有任何建议如何以不同的方式达到相同的效果,请分享。

修改: QMenuBar完成了这项工作。谢谢!

0 个答案:

没有答案