删除选定的MSHFlexGrid控件中的一行

简介:            昨天晚上到今天上午,一直在弄那个添加删除用户的窗体。其实就纠结在一个问题上,如何点击一个网格,删除选中的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虽然移除了数据,但是别忘了同时删除数据库中的数据。在删除数据库中的数据时,我是以用户名作为查询的字段,所以在表格中数据移除之前,需要注意的是,要先对用户名进行了保存,不然会有下标越界的错误(为什么?都删掉了,再读取,当然越界。)

 


 

 

 

       

目录
相关文章
|
6月前
Datagridview 显示当前选中行
Datagridview 显示当前选中行
62 0
|
6月前
[Qt5&控件] 选项卡tabWidget控件隐藏&增加tab个数
[Qt5&控件] 选项卡tabWidget控件隐藏&增加tab个数
421 0
C#编程-23:删除datagridview中选中的多行
C#编程-23:删除datagridview中选中的多行
262 0
jqgrid 不能选中行, 每次点击单元格都自动选中第一行
最使用jqgrid表格插件写了一个功能。功能完成后显示一切正常,但是经过测试后发现,每次点击数据行时,都会自动选中第一行,无法选中其他数据行。经过一番探索,最终发现是加载进来的字段没有主键导致了这个问题。
4287 0
c#Winform修改datatable的列的操作和一些combox绑定实体类,dataGridview的注意点 弹出确认框 弹出的winform出现的位置 load
ds是DataSet 是Datatable的集合 ds.Tables[0]是得到第一张表 然后就是对dt的操作 将Fill_ID列名修改为 “序号” 依次修改列名 combox绑定list 显示combox上的值是用cmb_name 但是 在窗体加载的时候 cmb_name是 它本身的类型名字 而不是空 只有当它上面绑定有真正的值后才会显示。
1368 0