删除选定的MSHFlexGrid控件中的一行
???????????昨天晚上到今天上午,一直在弄那个添加删除用户的窗体。其实就纠结在一个问题上,如何点击一个网格,删除选中的Mshflexgrid控件中的一行。 ???????????由于对这个控件在学生信息管理系统时,学的很生疏,所以又从头学了一遍。 ???????????先来看一看常用属性: ????????? AddItem向网格中加入一新行 ????????? Clear 清除网格中的内容 ????????? ClearStructure清除网格的结构(映射信息)????? ??????????RemoveItem从网格中清除一行 ????rowsel返回选中的行 ??? colsel返回选中的列 ????TextMatrix设置/返回某个选定行,列的单元的文本内容 ??? RowsLong返回网格的行的总数或者或BAND的行的总数 ??? 下面是如何删除表格中的数据和数据库中数据的代码: ??? Private Sub cmdDelete_Click() '删除选中的行 '先移除表中的数据 '保存要移除的那行的用户名 DelUser = Trim(myFlexGrid.TextMatrix(myFlexGrid.RowSel,0)) '删除表中的此行 RowIndex = myFlexGrid.RowSel myFlexGrid.RemoveItem (RowIndex) '删除数据库中数据 '先判断删除的是否是空行 If myFlexGrid.TextMatrix(myFlexGrid.RowSel,myFlexGrid.ColSel) = "" Then Exit Sub Else '当删除的不是空行时 DelSQL = "delete from userinfo where 用户名= '" & DelUser & "'" Call ExecuteSQL(DelSQL,strMsg) '执行查询 End If End Sub
这里需要注意的是,在表格中使用Removeitem虽然移除了数据,但是别忘了同时删除数据库中的数据。在删除数据库中的数据时,我是以用户名作为查询的字段,所以在表格中数据移除之前,需要注意的是,要先对用户名进行了保存,不然会有下标越界的错误(为什么?都删掉了,再读取,当然越界。) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |