Private Sub Command1_Click()Dim i As IntegerIf select_tabshi_All = True Then
'向MSHFlexGrid加入数据
With MSHFlexGrid1
For i = 1 To rowcount - 1
.AddItem (Str(i))
.Row = i
.Col = 0
.Text = i
.Col = 1
.Text = AllQur_tabshi(i).id
.Col = 2
.Text = AllQur_tabshi(i).tab_name
.Col = 3
.Text = AllQur_tabshi(i).tab_password
.Col = 4
.Text = AllQur_tabshi(i).xin
Next
End WithEnd If
End Sub'清空MSHFlexGrid
Private Sub ClearGlid()
Dim i As Integer
For i = MSHFlexGrid1.Rows To 2 Step -1
MSHFlexGrid1.RemoveItem i
Next
With MSHFlexGrid1
.Row = 1
.Col = 0
.Text = ""
.Col = 1
.Text = ""
.Col = 2
.Text = ""
.Col = 3
.Text = ""
.Col = 4
.Text = ""
End With
End Sub
'查询方法 (结果放在AllQur_tabshi数组)
Public Function select_tabshi_All() As Boolean
Dim RS As ADODB.Recordset
Dim i As Integer
Dim sqlStr As String
sqlStr = "select id,tab_name,tab_password,xin from tabshi"
Debug.Print sqlStr
Set RS = New ADODB.Recordset
RS.Open sqlStr, conn
i = 1
select_tabshi_All = False
Do Until RS.EOF
select_tabshi_All = True
If IsNull(RS.Fields("id")) = False Then
AllQur_tabshi(i).id = RS.Fields("id")
End If
If IsNull(RS.Fields("tab_name")) = False Then
AllQur_tabshi(i).tab_name = RS.Fields("tab_name")
End If
If IsNull(RS.Fields("tab_password")) = False Then
AllQur_tabshi(i).tab_password = RS.Fields("tab_password")
End If
If IsNull(RS.Fields("xin")) = False Then
AllQur_tabshi(i).xin = RS.Fields("xin")
End If
i = i + 1
RS.MoveNext
Loop
rowcount = i
If rowcount > 1 Then
select_tabshi_All = True
MsgBox "加载成功!"
Else
select_tabshi_All = False
End If
End Function能成功加载出数据 单击清空 也能成功清空
当在次加载的时候 数据显示不全 只能显示一条数据
'向MSHFlexGrid加入数据
With MSHFlexGrid1
For i = 1 To rowcount - 1
.AddItem (Str(i))
.Row = i
.Col = 0
.Text = i
.Col = 1
.Text = AllQur_tabshi(i).id
.Col = 2
.Text = AllQur_tabshi(i).tab_name
.Col = 3
.Text = AllQur_tabshi(i).tab_password
.Col = 4
.Text = AllQur_tabshi(i).xin
Next
End WithEnd If
End Sub'清空MSHFlexGrid
Private Sub ClearGlid()
Dim i As Integer
For i = MSHFlexGrid1.Rows To 2 Step -1
MSHFlexGrid1.RemoveItem i
Next
With MSHFlexGrid1
.Row = 1
.Col = 0
.Text = ""
.Col = 1
.Text = ""
.Col = 2
.Text = ""
.Col = 3
.Text = ""
.Col = 4
.Text = ""
End With
End Sub
'查询方法 (结果放在AllQur_tabshi数组)
Public Function select_tabshi_All() As Boolean
Dim RS As ADODB.Recordset
Dim i As Integer
Dim sqlStr As String
sqlStr = "select id,tab_name,tab_password,xin from tabshi"
Debug.Print sqlStr
Set RS = New ADODB.Recordset
RS.Open sqlStr, conn
i = 1
select_tabshi_All = False
Do Until RS.EOF
select_tabshi_All = True
If IsNull(RS.Fields("id")) = False Then
AllQur_tabshi(i).id = RS.Fields("id")
End If
If IsNull(RS.Fields("tab_name")) = False Then
AllQur_tabshi(i).tab_name = RS.Fields("tab_name")
End If
If IsNull(RS.Fields("tab_password")) = False Then
AllQur_tabshi(i).tab_password = RS.Fields("tab_password")
End If
If IsNull(RS.Fields("xin")) = False Then
AllQur_tabshi(i).xin = RS.Fields("xin")
End If
i = i + 1
RS.MoveNext
Loop
rowcount = i
If rowcount > 1 Then
select_tabshi_All = True
MsgBox "加载成功!"
Else
select_tabshi_All = False
End If
End Function能成功加载出数据 单击清空 也能成功清空
当在次加载的时候 数据显示不全 只能显示一条数据
解决方案 »
- VBA不成功,大家看下原因
- MDI左边怎么加面板??谢谢,高分相送
- 如何用vb从数据库中提取数据,并对其进行判断?
- ★★★有QQ号码赠送!!你想要吗?(限量赠送!)
- 完蛋了,我问问题总是没人回答,看来我是完了,这回我被老板炒定了~~~~~~~~~~~~~~~~
- 请教:文件处理的速度
- VB.NET ,已编好的浏览器,帮忙加一个右键双击图片获取图片地址的功能
- 如何将已有的水晶报表添加到现有的工程?(立刻给分)
- 不知调用哪个API可以让进程不在“结束任务”中显示。
- 在xp中装金山词霸为什么安装过程中全是乱码呢?
- 求助vb高手...VSFlexGrid实现类似treeview效果...
- sendmessage 写入内容不起作用
否则
For i = 1 To rowcount - 1
时得不到数据
而且 第二次也成功的进入了 '向MSHFlexGrid加入数据
With MSHFlexGrid1
For i = 1 To rowcount - 1
.AddItem (Str(i))
.Row = i
.Col = 0
.Text = i
.Col = 1
.Text = AllQur_tabshi(i).id
.Col = 2
.Text = AllQur_tabshi(i).tab_name
.Col = 3
.Text = AllQur_tabshi(i).tab_password
.Col = 4
.Text = AllQur_tabshi(i).xin
Next
End With
就是不显示数据(调试显示赋值了)
.AddItem (Str(i)) 这里是不是有问题 我想不到怎么解决
MSHFlexGrid1.AddItem "a" & vbtab & "b" & vbtab & "c"
For i = 1 To rowcount - 1
.AddItem
' MSHFlexGrid1.AddItem "a" & vbTab & "b" & vbTab & "c"
.Col = 0
.Text = i
.Col = 1
.Text = AllQur_tabshi(i).id
.Col = 2
.Text = AllQur_tabshi(i).tab_name
.Col = 3
.Text = AllQur_tabshi(i).tab_password
.Col = 4
.Text = AllQur_tabshi(i).xin
vbTab
Next
不对 不懂 怎么搞了
'向MSHFlexGrid加入数据
With MSHFlexGrid1
For i = 1 To rowcount
.AddItem (Str(i))
.Row = i
.Col = 0
.Text = i
.Col = 1
.Text = i & ",1"
.Col = 2
.Text = i & ",2"
.Col = 3
.Text = i & ",3"
.Col = 4
.Text = i & ",4"
Next
End WithEnd If
End Sub'清空MSHFlexGrid
Private Sub ClearGlid()
Dim i As Integer
For i = MSHFlexGrid1.Rows To 2 Step -1
MSHFlexGrid1.RemoveItem i
Next
With MSHFlexGrid1
.Row = 1
.Col = 0
.Text = ""
.Col = 1
.Text = ""
.Col = 2
.Text = ""
.Col = 3
.Text = ""
.Col = 4
.Text = ""
End With
End Sub
'查询方法 (结果放在AllQur_tabshi数组)
Public Function select_tabshi_All() As Boolean
' Dim RS As ADODB.Recordset
Dim i As Integer
Dim sqlStr As String
' sqlStr = "select id,tab_name,tab_password,xin from tabshi"
'
' Debug.Print sqlStr
'
' Set RS = New ADODB.Recordset
'
' RS.Open sqlStr, conn
i = 1
select_tabshi_All = False
' Do Until RS.EOF
' select_tabshi_All = True
' If IsNull(RS.Fields("id")) = False Then
' AllQur_tabshi(i).id = RS.Fields("id")
' End If
'
' If IsNull(RS.Fields("tab_name")) = False Then
' AllQur_tabshi(i).tab_name = RS.Fields("tab_name")
' End If
'
' If IsNull(RS.Fields("tab_password")) = False Then
' AllQur_tabshi(i).tab_password = RS.Fields("tab_password")
' End If
'
' If IsNull(RS.Fields("xin")) = False Then
' AllQur_tabshi(i).xin = RS.Fields("xin")
' End If
'
'
' i = i + 1
' RS.MoveNext
' Loop
i = 8
rowcount = i
If rowcount > 1 Then
select_tabshi_All = True
MsgBox "加载成功!"
Else
select_tabshi_All = False
End If
End FunctionPrivate Sub Command2_Click()
Call ClearGlid
End SubPrivate Sub Form_Load()
MSHFlexGrid1.Cols = 5
End Sub
改为 dim blnT as boolean
blnT=select_tabshi_All
if blnT= True then另外清空的时候
For i = MSHFlexGrid1.Rows-1 To 1 Step -1
MSHFlexGrid1.RemoveItem i
Next
否则就保留了一行,正是你看到的剩下的一行.
清空也不必你那样写,直接MSHFlexGrid1.rows=1就行了
清空的 问题 换成
MSHFlexGrid1.rows=1 以后能正常显示了