[Qt-interest] Fwd: how to judge which button click the QTreeWidgetItem?

lvbing lvbing lvbing1981 at gmail.com
Fri Nov 5 01:01:17 CET 2010


---------- Forwarded message ----------
From: lvbing lvbing <lvbing1981 at gmail.com>
Date: Thu, Nov 4, 2010 at 7:01 PM
Subject: Re: [Qt-interest] how to judge which button click the
QTreeWidgetItem?
To: Keith Rusler <xzekecomax at gmail.com>


I know,
but  when I click the right button,it will emit the signal:
itemClick(QTreeWidgetItem*,int).

so I don't know who emit the signal itemClick,left button or right
button.and the result is:when I clicked
the left button,the itemClick will be done
and when I clicked the right button,the itemClick also will be done,but I
don't want to call the itemClick when
I clicked the right button!

so how can I distinguish which button has been clicked when the signal
itemClicked be emited?

thank all


On Thu, Nov 4, 2010 at 5:46 PM, Keith Rusler <xzekecomax at gmail.com> wrote:

> I think it should be quite normal if you really think about it. Because if
> you right click on any item, it should show a context menu for that item it
> was clicked on right?
>
> On 4 November 2010 04:08, lvbing lvbing <lvbing1981 at gmail.com> wrote:
>
>> hello all
>>     I have a QTreeWidget in my QMainWidows,and I have two functions,the
>> one is left button click
>>  and the another is the right button to popup some Menu.
>>
>> The code like this:
>>
>> MainWindow::MainWindow() : QMainWindow()
>> {
>>     setCentralWidget(view);
>>     view = new QTreeWidget(this);
>>     connect(view,SIGNAL(itemClicked ( QTreeWidgetItem *, int
>> )),this,SLOT(on_MyTree_itemClicked( QTreeWidgetItem *, int )));
>>     init();
>> }
>>
>> void MainWindow::on_MyTree_itemClicked ( QTreeWidgetItem * item, int
>> column )
>> {
>>     qDebug() << "on_MyTree_itemClicked"
>>         << item->text(column);
>>     //to do somthing
>> }
>>
>>
>> void MainWindow::contextMenuEvent(QContextMenuEvent * event)
>> {
>>     qDebug() << "contextMenuEvent"
>>         << event->pos().x()
>>         << " and "
>>         << event->pos().y();
>>     //To popup the menu when I click the right mouse button!
>> }
>>
>> But now I find when I clicked the right button,it will call
>> the on_MyTree_itemClicked  slot first!!
>> and how can I distinguish the left or right button?
>>
>>  thanks all
>>
>> _______________________________________________
>> Qt-interest mailing list
>> Qt-interest at trolltech.com
>> http://lists.trolltech.com/mailman/listinfo/qt-interest
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.qt-project.org/pipermail/qt-interest-old/attachments/20101105/19c6e974/attachment.html 


More information about the Qt-interest-old mailing list