在用户归档显示控件中,用鼠标单击选中行,使用归档专用函数,读取当前选中数据记录中指定字段的值,按照系统帮助中的示例做没有问题,但是不使用uaArchivemoveFirST函数,直接使用鼠标选中行,则无法读取数据。好像直接用鼠标无法指定“当前数据记录”。请问这个问题怎么解决?
最佳答案
可以实现楼主的功能,在控件的SelectedIDChange对象事件中实现,鼠标在哪一样就读取哪一行的ID,然后用归档函数进行过滤、查询、最后读取某一列的数值。
一下语句供参考。
***************OpenUserArchivES************************************************
uaArchiveOpen(hArchive);
uaArchiveSetFilter(hArchive,szSQL);
uaArchiveRequery(hArchive);
uaArchiveGetCount(hArchive,&IndexArchive);
uaArchiveMoveLASt(hArchive);//Return-Type:BOOL
//**********ReadDataFromtheUserArchive****************************
uaArchiveGetFieldVaLUeLong(hArchive,3,&tmp1);
uaArchiveGetFieldValueString(hArchive,5,tmp2,100);
//**********SetDataTOtheTag****************************
SetTagChar("d_b1",tmp1);
SetTagDWord("d_s1",tmp2);//Return-Type:BOOL
//****************UpdateArchive*********************************************
uaArchiveUpdate(hArchive);
//****************CloseAllHandlsandConnections***********************
Finished:;
提问者对于答案的评价:
感谢您的答案,我要达到的功能已经实现了
专家置评
已阅,最佳答案正确。