QT qtablewidget用法

ui.tableWidget-> setColumnCount(1);
QStringList heard;
heard<<"X0_Y0-X1_Y1";
ui.tableWidget-> setHorizontalHeaderLabels ( heard );

ui.tableWidget->resizeColumnsToContents();//设置宽度随字长变化


connect(ui.tableWidget, SIGNAL(itemPressed(QTableWidgetItem *)),this, SLOT(OnTableRightBtn(QTableWidgetItem * )));//设置按键按下信号槽


connect(ui.tableWidget, SIGNAL(itemSelectionChanged()),this, SLOT(OnTableSelectChanged()));//


void CTabTwo::UpdateData()
{
ui.tableWidget->clear();//先清除


if (m_nCurrentView == 1)
{
QStringList heard;
heard<<"X0_Y0-X1_Y1";
ui.tableWidget-> setHorizontalHeaderLabels ( heard );


//再重新添加,添加0_1
for (int i = 0; i < ui.label_1->m_listCenter.size(); i++)
{
QString str = QString("X0=%1,Y0=%2,X1=%3,Y1=%4").arg(ui.label_1->m_listCenter.at(i).x()).arg(ui.label_1->m_listCenter.at(i).y()).arg(ui.label_2->m_listCenter.at(i).x()).arg(ui.label_2->m_listCenter.at(i).y());


ui.tableWidget->insertRow(i);
QTableWidgetItem *item = new QTableWidgetItem(str);
ui.tableWidget->setItem(i, 0, item );
}
}
else if (m_nCurrentView ==2)
{
QStringList heard;
heard<<"X1_Y1-X2_Y2";
ui.tableWidget-> setHorizontalHeaderLabels ( heard );


//再重新添加,添加0_1
for (int i = 0; i < ui.label_3->m_listCenter.size(); i++)
{
QString str = QString("X1=%1,Y1=%2,X2=%3,Y2=%4").arg(ui.label_2->m_listCenter.at(i).x()).arg(ui.label_2->m_listCenter.at(i).y()).arg(ui.label_3->m_listCenter.at(i).x()).arg(ui.label_3->m_listCenter.at(i).y());


ui.tableWidget->insertRow(i);
QTableWidgetItem *item = new QTableWidgetItem(str);
ui.tableWidget->setItem(i, 0, item );
}
}

}


void CTabTwo::OnTableRightBtn(QTableWidgetItem *item )
{
if (qApp->mouseButtons() == Qt::RightButton)
{
QMenu menu;
menu.addAction(m_pAcDel);
menu.addAction(m_pAcCel);


menu.exec(QCursor::pos()/*mapToGlobal(qApp->pos())*/);
}
else if (qApp->mouseButtons() == Qt::LeftButton)
{
int n = ui.tableWidget->currentRow();


if (m_nCurrentView == 1)
{
ui.label_1->FocusPoint(n);
ui.label_2->FocusPoint(n);
}
else if(m_nCurrentView ==2)
{
ui.label_2->FocusPoint(n);
ui.label_3->FocusPoint(n);
}

}
}


void CTabTwo::OnTableSelectChanged()
{
int n = ui.tableWidget->currentRow();


if (m_nCurrentView == 1)
{
ui.label_1->FocusPoint(n);
ui.label_2->FocusPoint(n);
}
else if(m_nCurrentView ==2)
{
ui.label_2->FocusPoint(n);
ui.label_3->FocusPoint(n);
}
}




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值