c++ 我要在QMenu上添加一个QListView控件,然后这个QListView控件里添加多个QAction控件
时间: 2024-01-13 21:05:23 浏览: 43
可以通过以下步骤在QMenu上添加一个QListView控件,并在其中添加多个QAction控件:
1. 创建一个QMenu对象,并将其设置为您要添加QListView控件的父对象。例如,如果您要在主窗口上创建一个QMenu,则可以使用以下代码:
```cpp
QMenu *menu = new QMenu(this);
```
2. 创建一个QListView对象,并将其设置为QMenu的布局对象。例如,您可以使用以下代码将QListView添加到QMenu中:
```cpp
QListView *listView = new QListView(menu);
menu->setStyleSheet("QMenu::item {padding: 2px 25px;}");
menu->setMinimumWidth(100);
menu->setMaximumHeight(400);
menu->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
menu->setStyleSheet("QMenu::item {padding: 2px 25px;}");
menu->setLayout(new QVBoxLayout(menu));
menu->layout()->addWidget(listView);
```
3. 创建多个QAction对象,并将它们添加到QListView中。例如,您可以使用以下代码将两个QAction添加到QListView中:
```cpp
QAction *action1 = new QAction("Action 1", menu);
QAction *action2 = new QAction("Action 2", menu);
QList<QAction*> actions;
actions.append(action1);
actions.append(action2);
listView->addActions(actions);
```
当您单击QMenu时,将显示QListView控件,其中包含添加的QAction控件。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)