1、有关MSHFlexGrid1的问题 2、怎样判断窗体已打开
1、怎样判断窗体已打开
2、为什么数据库与MSHFlexGrid1的数据不能同步,当我按cmddel删除按钮时无论在MSHFlexGrid1的什么位置,总只是删除数据库中的第一个数据,应怎样解决?
dim mybookmark as Variant
-------------------------------------------
Private Sub Form_Load()
MSHFlexGrid1.Refresh
Dim i As Integer
Dim txtSQL As String
Dim msgtext As String
Dim ii, iii As Integer
If MSHFlexGrid1.Rows <= 0 Then
cmdOK.Enabled = False
End If
i = 1
txtSQL = "select * from account"
Set mrc = ExecuteSQL(txtSQL, msgtext)
Set MSHFlexGrid1.DataSource = mrc
With MSHFlexGrid1
.TextMatrix(0, 0) = "编号"
.TextMatrix(0, 1) = "用户名"
.TextMatrix(0, 2) = "权限"
.TextMatrix(0, 3) = "密码"
For i = 1 To .Rows - 1
.TextMatrix(i, 0) = i
Next
End Sub
------------------------------------------------------
Private Sub cmddel_Click()
Dim str1 As String
Dim txtSQL As String
Dim mrcc As ADODB.Recordset
Dim msgtext As String
mybookmark = mrc.Bookmark
Case "删除用户"
Combo1.Locked = True
If Trim(MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 1))_ =UserName Then
MsgBox "不能删除当前管理员信息!", vbOKOnly +_ vbExclamation, "警告"
Exit Sub
End If
str1 = MsgBox("你确定要删除用户 “ " & Trim_(MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 1)) & " ” 吗?", vbOKCancel_ + vbExclamation, "警告")
If str1 = vbOK Then
mrc.MoveNext
If mrc.EOF Then
mrc.MoveFirst
mybookmark = mrc.Bookmark
mrc.MoveLast
mrc.Delete
mrc.Bookmark = mybookmark
MSHFlexGrid1.RemoveItem MSHFlexGrid1.Row
Else
mybookmark = mrc.Bookmark
mrc.MovePrevious
mrc.Delete
mrc.Bookmark = mybookmark
MSHFlexGrid1.RemoveItem MSHFlexGrid1.Row
End If
Else
mrc.Bookmark = mybookmark
Exit Sub
End If
End Sub
问题点数:0、回复次数:5Top
1 楼generalj(general)回复于 2003-05-04 02:12:45 得分 0
好象MSHFlexGrid不象DataGrid那样与数据库同步的,
我的做法是删除之前用find 主键 定一下位。
rs.find "bh = '" & .TextMatrix(.row, 1)
Top
2 楼coolice823(飞翔)回复于 2003-05-04 09:20:59 得分 0
第一个问题
查一个form.visable=false or =true 就行了Top
3 楼Vii(Vii)回复于 2003-05-04 09:41:05 得分 0
gzTop




