Я хочу добавить QPushButton внутри ListItm, поэтому я реализовал код, приведенный ниже. Но кнопка находится в середине списка, на самом деле я хочу, чтобы она находилась в нижней части элемента списка. Как это возможно. Также это событие нажатия кнопки не работает. На самом деле я хочу напрямую отключить событие щелчка элемента и, нажав кнопку внутри QListWidgetItem, я хочу включить событие щелчка элемента. Но я не могу выполнить эту операцию. Как это сделать? Я использовал следующий фрагмент кода:
list=new QListWidget(this);
// list->setStyleSheet("* { background-color:rgb(0,0,0); padding: 10px ; color:rgb(255,255,255)}");
list->setGeometry(0,61,360,475);
list->setSortingEnabled(true);
//connect(list,SIGNAL(itemClicked(QListWidgetItem*)),this,SLOT(ItemClicked(QListWidgetItem*)));
item=new QListWidgetItem();
item->setIcon(QIcon(":/images/Icon.png"));
item->setText("Item1");
item->setSizeHint(QSize(80,80));
item->setBackgroundColor(QColor(200,255,100));
list->addItem(item);
QPushButton *but = new QPushButton(">");
but->setMaximumSize(50,80);
but->setFlat(true);
// but->setGeometry(QRect(500,100,100,100));
but->setStyleSheet("background: transparent; border: none");
QHBoxLayout *layout= new QHBoxLayout();
layout->addWidget(but);
QWidget *widget = new QWidget();
widget->setLayout(layout);
item->setSizeHint(widget->sizeHint());
list->setItemWidget(item, widget);
connect(but, SIGNAL(clicked()), this, SLOT(ItemClicked()));
#if defined(Q_WS_S60)
list->showMaximized();
#else
list->show();
#endif
ItemClicked()
{
int Index = list->currentIndex().row();//Always getting this Index as -1
}
Пожалуйста, ознакомьтесь с приведенным выше кодом и предоставьте свои предложения.
Спасибо ...