#include<QFile>
#include<QTextStream>
#include<QDateTime>
#include<QTimer>
#include<QMenu>
#include<QProcess>
#include<QDebug>
#include<QMessageBox>
#include "main_widget.h"
#include "ui_main_widget.h"
#include"view_of_monitoring_point_information_widget.h"
#include"modify_point_dialog.h"
#include"sensor_selection_dialog.h"
#include"modify_sensor_dialog.h"
#include"strain_measuring_point.h"
#include"deflection_monitoring_point.h"
#include"displacement_monitoring_point.h"
#include"strain_sensor.h"
#include"deflection_sensor.h"
#include"displacement_sensor.h"
#include"add_point_dialog.h"
#include"add_sensor_dialog.h"
#include"sensor_information_widget.h"
main_widget::main_widget(QWidget *parent) :QWidget(parent),ui(new Ui::main_widget)
{
ui->setupUi(this);
timeShow();
show_measuring_point_on_tableWidget();
show_sensor_on_tableWidget();
//双击鼠标信号槽连接
connect (ui->point_tableWidget,SIGNAL(cellDoubleClicked(int,int)),this,SLOT(point_tableWidget_double_click_action(int)));
connect (ui->sensor_tableWidget,SIGNAL(cellDoubleClicked(int,int)),this,SLOT(sensor_tableWidget_double_click_action(int)));
}
void main_widget::on_ensure_point_pushButton_clicked()
{
add_point_dialog apd;
apd.setWindowOpacity(0.9);
apd.setWindowFlags(Qt::Widget);
apd.setWindowTitle("Adding "+ui->op_point_comboBox->currentText());
apd.set_point_Type_temp(ui->op_point_comboBox->currentText());
apd.exec();
show_measuring_point_on_tableWidget();
}
void main_widget::show_measuring_point_on_tableWidget()
{
int RowCount=0;
//---------------------------------------------------------------------------------------读入应变测点数据
std::list<strain_measuring_point> list_of_smp;
RowCount=Read_data_from_TXT_file(list_of_smp,"strain_measuring_points.txt",RowCount);
//---------------------------------------------------------------------------------------读入挠度测点数据
std::list<deflection_monitoring_point> list_of_de_mp;
RowCount=Read_data_from_TXT_file(list_of_de_mp,"deflection_monitoring_points.txt",RowCount);
//---------------------------------------------------------------------------------------读入位移测点数据
std::list<displacement_monitoring_point> list_of_di_mp;
RowCount=Read_data_from_TXT_file(list_of_di_mp,"displacement_monitoring_points.txt",RowCount);
//---------------------------------------------------------------------------------------设置行数
ui->point_tableWidget->setRowCount(RowCount);
int Rows=0,Columns=0;
//---------------------------------------------------------------------------------------显示应变测点数据
for(auto& smp:list_of_smp)
{
QTableWidgetItem *name=new QTableWidgetItem(smp.getName());
name->setToolTip(smp.getName());
QTableWidgetItem *number=new QTableWidgetItem(smp.getNumber());
number->setToolTip(smp.getNumber());
QTableWidgetItem *position=new QTableWidgetItem(smp.getPosition());
position->setToolTip(smp.getPosition());
ui->point_tableWidget->setItem(Rows,Columns++,name);
ui->point_tableWidget->setItem(Rows,Columns++,number);
ui->point_tableWidget->setItem(Rows,Columns++,position);
if(!smp.is_Bound_sensor())
{
QTableWidgetItem *sensor_name=new QTableWidgetItem("Not Bound");
sensor_name->setToolTip("Not Bound");
ui->point_tableWidget->setItem(Rows,Columns,sensor_name);
}
else
{
QTableWidgetItem *sensor_name=new QTableWidgetItem(smp.getTheSensor().getName());
sensor_name->setToolTip(smp.getTheSensor().getName());
ui->point_tableWidget->setItem(Rows,Columns,sensor_name);
}
//ui->point_tableWidget->setItem(Rows,Columns,new QTableWidgetItem("···"));
Rows++;
Columns=0;
}
//---------------------------------------------------------------------------------------显示挠度测点数据
for(auto& de_mp:list_of_de_mp)
{
QTableWidgetItem *name=new QTableWidgetItem(de_mp.getName());
name->setToolTip(de_mp.getName());
QTableWidgetItem *number=new QTableWidgetItem(de_mp.getNumber());
number->setToolTip(de_mp.getNumber());
QTableWidgetItem *position=new QTableWidgetItem(de_mp.getPosition());
position->setToolTip(de_mp.getPosition());
ui->point_tableWidget->setItem(Rows,Columns++,name);
ui->point_tableWidget->setItem(Rows,Columns++,number);
ui->point_tableWidget->setItem(Rows,Columns++,position);
if(!de_mp.is_Bound_sensor())
{
QTableWidgetItem *sensor_name=new QTableWidgetItem("Not Bound");
sensor_name->setToolTip("Not Bound");
ui->point_tableWidget->setItem(Rows,Columns,sensor_name);
}
else
{
QTableWidgetItem *sensor_name=new QTableWidgetItem(de_mp.getTheSensor().getName());
sensor_name->setToolTip(de_mp.getTheSensor().getName());
ui->point_tableWidget->setItem(Rows,Columns,sensor_name);
}
//ui->point_tableWidget->setItem(Rows,Columns,new QTableWidgetItem("···"));
Rows++;
Columns=0;
}
//---------------------------------------------------------------------------------------显示位移测点数据
for(auto& di_mp:list_of_di_mp)
{
QTableWidgetItem *name=new QTableWidgetItem(di_mp.getName());
name->setToolTip(di_mp.getName());
QTableWidgetItem *number=new QTableWidgetItem(di_mp.getNumber());
number->setToolTip(di_mp.getNumber());
QTableWidgetItem *position=new QTableWidgetItem(di_mp.getPosition());
position->setToolTip(di_mp.getPosition());
ui->point_tableWidget->setItem(Rows,Columns++,name);
ui->point_tableWidget->setItem(Rows,Columns++,number);
ui->point_tableWidget->setItem(Rows,Columns++,position);
if(!di_mp.is_Bound_sensor())
{
QTableWidgetItem *sensor_name=new QTableWidgetItem("Not Bound");
sensor_name->setToolTip("Not Bound");
ui->point_tableWidget->setItem(Rows,Columns,sensor_name);
}
else
{
QTableWidgetItem *sensor_name=new QTableWidgetItem(di_mp.getTheSensor().getName());
sensor_name->setToolTip(di_mp.getTheSensor().getName());
ui->point_tableWidget->setItem(Rows,Columns,sensor_name);
}
//ui->point_tableWidget->setItem(Rows,Columns,new QTableWidgetItem("···"));
Rows++;
Columns=0;
}
//---------------------------------------------------------------------------------------QT tableWidget 内容居中显示
for(int row=0;row<Rows;row++)
for(int column=0;column<4;column++)
ui->point_tableWidget->item(row,column)->setTextAlignment(Qt::AlignHCenter|Qt::AlignVCenter);
//---------------------------------------------------------------------------------------
ui->point_tableWidget->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);//设置列宽度均分窗口宽度
ui->point_tableWidget->verticalHeader()->setSectionResizeMode(QHeaderView::Stretch);//设置行高度均分窗口高度
ui->point_tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);//设置表格对用户只读
ui->point_tableWidget->setSelectionBehavior(QAbstractItemView::SelectRows); //整行选中的方式
ui->point_tableWidget->setItemDelegate(new NoFocusDelegate());//设置无虚线
// ui->point_tableWidget->horizontalHeader()->setFocusPolicy(Qt::NoFocus);//设置表头不可选
// ui->point_tableWidget->verticalHeader()->setFocusPolicy(Qt::NoFocus);
//将行和列的大小设为与内容相匹配
//ui->point_tableWidget->resizeColumnsToContents();
//ui->point_tableWidget->resizeRowsToContents();
//可以指�
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
计算机实践大作业基于QT+C++的桥梁监测数据采集系统源码(高分项目).zip该项目是个人大作业项目源码,评审分达到95分以上,都经过严格调试,确保可以运行!放心下载使用。 计算机实践大作业基于QT+C++的桥梁监测数据采集系统源码(高分项目).zip该项目是个人大作业项目源码,评审分达到95分以上,都经过严格调试,确保可以运行!放心下载使用。 计算机实践大作业基于QT+C++的桥梁监测数据采集系统源码(高分项目).zip该项目是个人大作业项目源码,评审分达到95分以上,都经过严格调试,确保可以运行!放心下载使用。 计算机实践大作业基于QT+C++的桥梁监测数据采集系统源码(高分项目).zip该项目是个人大作业项目源码,评审分达到95分以上,都经过严格调试,确保可以运行!放心下载使用。 计算机实践大作业基于QT+C++的桥梁监测数据采集系统源码(高分项目).zip该项目是个人大作业项目源码,评审分达到95分以上,都经过严格调试,确保可以运行!放心下载使用。 计算机实践大作业基于QT+C++的桥梁监测数据采集系统源码(高分项目).zip该项目是个人大作业项目源码
资源推荐
资源详情
资源评论
收起资源包目录
QT+C++的桥梁监测数据采集系统.zip (59个子文件)
QT+C++的桥梁监测数据采集系统
main_widget.ui 16KB
MyImages
chec1ked.svg 1KB
search.svg 694B
circular.svg 1KB
ch111ecked.svg 760B
checkmark.svg 443B
Br02.svg 2KB
checked.svg 1KB
Br01.svg 3KB
CQJTDX.png 24KB
LIB.jpg 369KB
energy.svg 1KB
sensor.cpp 1KB
modify_sensor_dialog.cpp 2KB
measuring_point.cpp 794B
sensor_information_widget.cpp 4KB
sensor_selection_dialog.h 2KB
deflection_monitoring_point.h 1KB
modify_point_dialog.cpp 829B
view_of_monitoring_point_information_widget.cpp 36KB
view_of_monitoring_point_information_widget.ui 2KB
login_dialog.h 362B
exe_icon.rc 46B
view_of_monitoring_point_information_widget.h 2KB
modify_point_dialog.ui 4KB
add_sensor_dialog.ui 7KB
modify_sensor_dialog.ui 7KB
login_dialog.cpp 3KB
measuring_point.h 669B
login_dialog.ui 5KB
sensor.h 1KB
main_widget.h 3KB
add_point_dialog.h 2KB
displacement_monitoring_point.cpp 2KB
main.cpp 386B
add_point_dialog.cpp 5KB
Bridge_Monitoring_Data_Acquisition_System.pro 3KB
displacement_monitoring_point.h 1KB
deflection_sensor.cpp 1KB
strain_measuring_point.h 908B
displacement_sensor.h 1KB
strain_sensor.cpp 2KB
sensor_information_widget.ui 7KB
Br01.ico 6KB
deflection_sensor.h 869B
modify_point_dialog.h 575B
sensor_selection_dialog.ui 2KB
add_point_dialog.ui 2KB
images.qrc 524B
sensor_information_widget.h 1KB
add_sensor_dialog.h 2KB
main_widget.cpp 82KB
strain_sensor.h 1KB
modify_sensor_dialog.h 1KB
deflection_monitoring_point.cpp 3KB
strain_measuring_point.cpp 2KB
add_sensor_dialog.cpp 8KB
sensor_selection_dialog.cpp 18KB
displacement_sensor.cpp 2KB
共 59 条
- 1
资源评论
盈梓的博客
- 粉丝: 7123
- 资源: 1797
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功