2014-02-09 3 views
0

QStandardModel이 있습니다. 내 itemChanged 신호를 내 슬롯에 연결합니다.Qt 신호 및 슬롯 : 변경된 데이터를 얻으려면 어떻게해야합니까?

m_model = new QStandardItemModel(this); 
connect(m_model, SIGNAL(itemChanged(QStandardItem*)), this, SLOT(changed(QStandardItem*))); 

슬롯은 다음과 같습니다

void Class::changed(QStandardItem * item) { 
    // ui->pushButton->setText("change"); 
    QString name = item->parent()->data().toString(); 
    ui->pushButton->setText(item->data().toString()); 
} 

푸시 버튼의 텍스트가 "변화"로 변경됩니다, 내 슬롯이 작동하는 것 같다 있도록. 그러나 item-> data(). toString()은 항상 비어 있습니다.

어떻게해야합니까?

답변

1

QStandardItem::text() 방법을 사용해야한다고 생각합니다. 이처럼 : QString name = item->parent()->text();

+0

똑똑하네요! – gartenriese

+0

년이 실수는 Qt 프로그래밍에서 일반적입니다. – Ilmirus