Red de conocimiento informático - Problemas con los teléfonos móviles - Cómo determinar cómo activar el evento de clic izquierdo del mouse en QTreeWidget

Cómo determinar cómo activar el evento de clic izquierdo del mouse en QTreeWidget

ifndefTREEWIDGET_H

#define TREEWIDGET_H

#ifndef TREEWIDGET_H

#define TREEWIDGET_H

#include QWidgetgt; >#include lt;QWidgetgt; #include lt;QWidgetgt; p>protegido:

void mouseReleaseEvent (QMouseEvent *evento); // TREEWIDGET_H

2. Implementación

#include "treeWidget.

QTreeWidget2:: QTreeWidget2(QWidget *padre)

: QTreeWidget (padre)

{

}

void QTreeWidget2::mouseReleaseEvent (QMouseEvent *evento)

{

if (event-gt; botón () & Qt ::RightButton )

{

emite customContextMenuRequested( event-gt; pos ()); }si no (evento-gt; botón () amp; Qt: .LeftButton){

emite elementoClicked(itemFromIndex (indexAt (evento-gt;pos ())), indexAt (evento-gt;pos ()).columna ());

}

}

}

3. #ifndef MAINWINDOW_H

#define MAINWINDOW_H

#include lt;QMainWindowgt;

#include lt;QTreeWidgetItemgt;

clase QTreeWidget2;

static const int itemtype1 = QTreeWidgetItem ::Type;

clase MainWindow: public QMainWindow

{

Q_OBJECT

público:

MainWindow explícito (QWidget *parent = 0);

ranuras públicas:

void setTest2(const QPoint amp; pos); >

void setTest(QTreeWidgetItem*elemento, columna int)

privado:

QTreeWidget2 *treeWidget

QTreeWidgetItem * currentItem

}; // MAINWINDOW_H

#include "mainwindow.h"

#include "treeWidget.h"

#include QMessageBoxgt;

#include lt;QtDebuggt;

MainWindow::MainWindow(QWidget *padre):

QMainWindow(padre)

{

treeWidget = nuevo QTreeWidget2 ;

treeWidget-gt; setContextMenuPolicy(Qt::CustomContextMenu);

treeWidget-gt; setHeaderLabel (tr("ResourceList"));

QTreeWidgetItem * raíz = nuevo QTreeWidgetItem( árbolWidget );

root-gt; setText (0, tr("raíz"));

QTreeWidgetItem *item = nuevo QTreeWidgetItem( raíz );

p>

elemento-gt; setText (0, tr("a"));

QTreeWidgetItem *item1 = nuevo QTreeWidgetItem( elemento ); item1-gt; setText (0, tr("b"));

QTreeWidgetItem *item2 = nuevo QTreeWidgetItem( item1 ); "c" )) ;

connect(treeWidget, SIGNAL(customContextMenuRequested(const QPoint amp;)),

this, SLOT(setTest2(const QPoint amp;))); /p>

connect( treeWidget, SIGNAL(itemClicked(QTreeWidgetItem*, int)),

this, SLOT(setTest(QTreeWidgetItem*, int)));

setCentralWidget); ( treeWidget );

cambiar tamaño (500, 400

}

void MainWindow::setTest2(const QPoint amp; pos)

{

currentItem = treeWidget-gt; itemAt(pos);

if ( currentItem == NULL )

return; > QMessageBox::guerra

ning (this, tr("test"), tr("hello"));

}

void MainWindow::setTest(QTreeWidgetItem*item, int column)

{

QMessageBox:: advertencia (this, tr("asd"), tr( tr("sd"));