• 7173阅读
  • 2回复

怎么添加TreeView 的item双击事件? [复制链接]

上一主题 下一主题
离线huyoujun
 

只看楼主 倒序阅读 楼主  发表于: 2008-03-17
— 本帖被 XChinux 从 General Qt Programming 移动到本区(2011-01-02) —
ui:
QTreeView *treeView;
treeView = new QTreeView(centralwidget);
splitter->addWidget(treeView);


mainwindow.h
class MainWindow : public QMainWindow, private Ui::MainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = 0);
    QDirModel *model;

//    void mousePressEvent(QMouseEvent *event);
//    Ui_MainWindow ui;
private slots:
    void on_action_triggered();
    void on_action_2_triggered();
    void on_action_4_triggered();
    void on_action_5_triggered();
    void on_action_6_triggered();
    void on_action_About_triggered();
    void itemSelected(QModelIndex &index);
   
};


mainwindow.cpp:


model = new QDirModel(this);
treeView->setModel(model);
connect(treeView,SIGNAL(doubleClicked(QModelIndex &)),qApp,SLOT(itemSelected(QModelIndex &)));


为什么我双击没反映啊?根本就没有触发doubleClicked事件.


离线qinyi
只看该作者 1楼 发表于: 2008-03-18
我也遇到这样的问题,还没解决
C++  QT
嵌入式BBS论坛
http://bbs.2embed.com
离线huyoujun

只看该作者 2楼 发表于: 2008-03-18
问题解决了
on_action_triggered();是action的默认触发函数,就是说你不用connect也可以触发on_action_triggered();
问题在于:
connect(treeView,SIGNAL(doubleClicked(QModelIndex &)),qApp,SLOT(itemSelected(QModelIndex &)));中的qApp,要关联上某个对象的方法,一般用this就可以了.
快速回复
限100 字节
 
上一个 下一个