作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private:
Ui::MainWindow *ui;
MyFileSystemModel model;
};
我的文件cpp
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
model.setRootPath(QDir::rootPath());
ui->treeView->setModel(&model);
ui->treeView->setSelectionMode(QAbstractItemView::MultiSelection);
ui->treeView->setDragEnabled(true);
}
我使用了 MultiSelection 属性,但它仅在我用鼠标单击 TreeView 中的项目时才起作用,我不想在不按键盘上的 CTRL 的情况下选择一些项目。如何检查用户是否按下 CTRL 然后选择项目?
最佳答案
QTreeview 有一个虚函数来设置选择模式。
您可以像这样将模式设置为多选:
QTreeView treeView;
treeView.setSelectionMode(QAbstractItemView::MultiSelection);
也可以使用 ctrl 键进行多选:
QTreeView treeView;
treeView.setSelectionMode(QAbstractItemView::ExtendedSelection);
有关 QTreeview 的更多信息 here .
关于c++ - 当用户在键盘上按住 CTRL 键时,如何在 TreeView 的 Qt 中实现多选?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45120887/
我是一名优秀的程序员,十分优秀!