用Qt4的designer生成一个ui文件,其中有两个表格(QTableWidget)分别命名为:opentable和movetable,在表格一中(opentable)导入以下数据:
列名分别为:
Number ID other ....
1 quwu 465.1 168.0 1.3 460.1 168.0 1.3 qdz2213P qdz2213Q qdz2213I wqz2213P wqz2213Q
2 liuquyi 465.1 100.0 4.9 460.1 100.0 1.2 ylq2217P ylq2217Q ylq2217I qdz2216P qdz2216Q
3 shengsan_1 564 264 6.2 561 191 6.2 bhz2218P bhz2218Q bhz2218I pyl2215P pyl2215Q
4 shengsan_2 42.7 31.8 1.3 42.6 128 1.3 bhz2217P bhz2217Q bhz2217I pyl2214P pyl2214Q
5 shengsan_3 137 114.6 1.9 138 138.3 1.9 pyl121P pyl121Q pyl121I kfq113P kfq113Q
6 housheng_1 240 100 2.7 239 98 2.7 pyl115P pyl115Q pyl115I kfq117P kfq117Q
7 housheng_2 203 90 2.3 200 99 2.3 wuz2218P wuz2218Q wuz2218I sgz2213P sgz2213Q
8 housheng_3 78 -14 0.8 78 -15 0.8 wuz2219P wuz2219Q wuz2219I sgz2214P sgz2214Q
9 nhzqlh1_1 -122.4 -53.9 1.4 -123.2 -52.7 1.4 bjz2214P bjz2214Q bjz2214I yjd2212P yjd2212Q
10 nhzqlh1_2 -354.9 -251.5 4.6 -354.2 -250.5 4.6 sgl2231P sgl2231Q sgl2231I wuz2220P wuz2220Q
我想实现这样的
功能:在表格二中(movetable)中的第二列(ID)输入相应的字符串(比如:liuquyi)后,按回车键就会把opentable中的第二行中的记录
2 liuquyi 465.1 100.0 4.9 460.1 100.0 1.2 ylq2217P ylq2217Q ylq2217I qdz2216P qdz2216Q 移到下面的表格(movetable)中来。
这个
机理我理解是这样的:当你在movetable中的ID列中输入相应的字符串后按回车就发送一个消息(signal)然后通过自己定义一个槽函数(slot)来接收这个消息(signal)并做相应移动记录的事情。
问题描述已经完成,现在我开始提问:1.在movetable(Qt4中的一个QTableWidget)的一个单元格(cell)中输入相应的字符串后,按回车键所激发的消息(signal)应该是哪个?(是该用:void QTableWidget::itemPressed ( QTableWidgetItem * item ) [signal] 还是void QTableWidget::cellPressed ( int row, int column ) [signal] 还是其他哪个函数?)
在这个功能的实现上似乎还要判断cell是否改变,只有当cell改变并按了回车键 都满足时才能执行移动操作。判断cell是否改变是不是应该用void QTableWidget::cellChanged ( int row, int column ) [signal] 这个函数还是其他什么函数?
2.怎么通过所输入的那个值来确定整个一行的值。[ 此贴被txiejun在2008-08-08 11:32重新编辑 ]