如何实现在操作表格(flexgrid,datagrid)选中一行,然后双击弹出另一个窗体!就象一般报表软件中表格操作一样! Dbclick事件。如果下一步跟你选中的记录有联系的话,那就提出该行的一个关键值(能够区别其它行),将另一个窗体跟此关键值联系起来,如果要对数据库中记录进行操作,就那检索此关键值进行操作。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在表格的Dbclick事件中让另一个窗体.show 1,然后在弹出的子窗体的Load事件中读取表格中的信息(如果需要的话)。 看看此例就应该差不多了re9.Open "select com_name,contract_num,je,month,date,dept,number,meno from yjdan where com_name='天诚公司'", connstr, adOpenDynamic, adLockOptimisticEnd IfSet nodx = TreeView1.Nodes.Add(, , "R", "合同客户一览表")If re8.RecordCount - 1 >= 0 Then i = 0 re8.MoveFirst For i = 0 To re8.RecordCount - 1 Set nodx = TreeView1.Nodes.Add("R", tvwChild, "I" & re8.Fields("contract_num").Value, re8.Fields("com_name").Value) ', re.Fields("part_name").Value) re8.MoveNext Next iEnd Ifnodx.EnsureVisibledb.Closere9.Closere8.CloseEnd SubPrivate Sub MSHFlexGrid1_Click()Dim x As IntegerStatic i, j, sum As IntegerIf db.State = 0 Thendb.Open connstrre9.CursorLocation = adUseClientre9.Open "select com_name,contract_num,je,month,date,dept,number,meno from yjdan where com_name='天诚公司'", connstr, adOpenDynamic, adLockOptimisticEnd Ifx = MSHFlexGrid1.MouseColre9.MoveFirst'MsgBox "you clicked the:" & MSHFlexGrid1.Text, vbCritical + 32, ""Text1.Text = MSHFlexGrid1.TextMatrix(MSHFlexGrid1.MouseRow, MSHFlexGrid1.MouseCol) ‘Text1.text为鼠标点中的单元格里的值End SubPrivate Sub Option1_Click(Index As Integer)Static my As Variant'Select Case Node.Text'MSHFlexGrid1.SetFocus'Case "合同客户一览表"Dim num As IntegerIf re10.State Thenre10.CloseEnd IfIf db.State = 0 Thendb.Open connstrre10.CursorLocation = adUseClientre10.Open "select com_name,month,date,je,number,dept,meno,operdate,oper,item from yjdan order by com_name", connstr, adOpenDynamic, adLockOptimisticdb.CloseEnd IfMSHFlexGrid1.ClearMSHFlexGrid1.Rows = re10.RecordCount + 1MSHFlexGrid1.Cols = re10.Fields.Count + 1MSHFlexGrid1.FixedRows = 0MSHFlexGrid1.Row = 0MSHFlexGrid1.Col = 0MSHFlexGrid1.Text = ""MSHFlexGrid1.Col = 1MSHFlexGrid1.Text = "公司名称"MSHFlexGrid1.Col = 2MSHFlexGrid1.Text = " 月"MSHFlexGrid1.Col = 3MSHFlexGrid1.Text = " 日"MSHFlexGrid1.Col = 4MSHFlexGrid1.Text = " 消费金额"MSHFlexGrid1.Col = 5MSHFlexGrid1.Text = " 消费卡号"MSHFlexGrid1.Col = 6MSHFlexGrid1.Text = " 消费部门"MSHFlexGrid1.Col = 7MSHFlexGrid1.Text = " 备 注"MSHFlexGrid1.Col = 8MSHFlexGrid1.Text = " 操作员"MSHFlexGrid1.Col = 9MSHFlexGrid1.Text = " 操作日期"MSHFlexGrid1.Col = 10MSHFlexGrid1.Text = " 消费项目"MSHFlexGrid1.ColWidth(0) = 200MSHFlexGrid1.ColWidth(1) = 1200MSHFlexGrid1.ColWidth(2) = 420MSHFlexGrid1.ColWidth(3) = 420MSHFlexGrid1.ColWidth(4) = 1000MSHFlexGrid1.ColWidth(5) = 1000MSHFlexGrid1.ColWidth(6) = 1200MSHFlexGrid1.ColWidth(7) = 800MSHFlexGrid1.ColWidth(8) = 1800MSHFlexGrid1.ColWidth(9) = 600re10.MoveFirstm = 0j = 0For m = 1 To re10.RecordCountmy = re10.bookMSHFlexGrid1.Row = mFor j = 0 To re10.Fields.Count - 1MSHFlexGrid1.Col = j + 1MSHFlexGrid1.Text = re10.Fields(j).Value & ""MSHFlexGrid1.CellAlignment = flexAlignLeftCenterNext jMSHFlexGrid1.Refreshj = j + 1StatusBar1.SimpleText = "各合同客户累计共有:" & my & "条消费项目"re10.MoveNextNext mWith MSHFlexGrid1 If .Rows > 1 Then .FillStyle = flexFillRepeat For i = .FixedRows + 1 To .Rows - 1 Step 2 .Row = i .Col = .FixedCols .ColSel = .Cols() - .FixedCols .CellBackColor = &H8000000F 'vbInfoBackground ' light grey Next i .FillStyle = flexFillSingle '.Sort = flexSortGenericAscending '.MergeCells = flexMergeRestrictColumns End IfEnd WithEnd Sub datagrid1.columns(0).textmshflexgrid1.text 补充一下mshflexgrid1.col=0mshflexgrid1.text 编写插件遇到了问题?急!!!!! 怎样通过API读取PDA中的唯一标识啊?谢谢! 如何改变系统默认的音频设备?(如果你是第一个可以做的,这一百分是你的!) Activebar控件一些问题... MsComm控件问题 如何锁定只让人用那软件,而不能做其它事?(如:上网,玩游戏等) 高手救命呀,RS如何循环? 准备做个网吧管理系统,大伙给点意见。 两种vb代码有什么本质上的区别? 高手进来休闲一下,菜鸟进来学一下,请不要不理不睬! 用VB连接因特网上数据库(Access和SQL Server)的方式,用来做远端客户端 一个在vb中使用数据库的问题,急!
看看此例就应该差不多了re9.Open "select com_name,contract_num,je,month,date,dept,number,meno from yjdan where com_name='天诚公司'", connstr, adOpenDynamic, adLockOptimistic
End If
Set nodx = TreeView1.Nodes.Add(, , "R", "合同客户一览表")
If re8.RecordCount - 1 >= 0 Then
i = 0
re8.MoveFirst
For i = 0 To re8.RecordCount - 1
Set nodx = TreeView1.Nodes.Add("R", tvwChild, "I" & re8.Fields("contract_num").Value, re8.Fields("com_name").Value) ', re.Fields("part_name").Value)
re8.MoveNext
Next i
End If
nodx.EnsureVisible
db.Close
re9.Close
re8.Close
End SubPrivate Sub MSHFlexGrid1_Click()
Dim x As Integer
Static i, j, sum As Integer
If db.State = 0 Then
db.Open connstr
re9.CursorLocation = adUseClient
re9.Open "select com_name,contract_num,je,month,date,dept,number,meno from yjdan where com_name='天诚公司'", connstr, adOpenDynamic, adLockOptimistic
End If
x = MSHFlexGrid1.MouseCol
re9.MoveFirst'MsgBox "you clicked the:" & MSHFlexGrid1.Text, vbCritical + 32, ""
Text1.Text = MSHFlexGrid1.TextMatrix(MSHFlexGrid1.MouseRow, MSHFlexGrid1.MouseCol) ‘Text1.text为鼠标点中的单元格里的值
End SubPrivate Sub Option1_Click(Index As Integer)
Static my As Variant
'Select Case Node.Text
'MSHFlexGrid1.SetFocus
'Case "合同客户一览表"Dim num As Integer
If re10.State Then
re10.Close
End If
If db.State = 0 Then
db.Open connstr
re10.CursorLocation = adUseClient
re10.Open "select com_name,month,date,je,number,dept,meno,operdate,oper,item from yjdan order by com_name", connstr, adOpenDynamic, adLockOptimistic
db.Close
End IfMSHFlexGrid1.Clear
MSHFlexGrid1.Rows = re10.RecordCount + 1
MSHFlexGrid1.Cols = re10.Fields.Count + 1
MSHFlexGrid1.FixedRows = 0
MSHFlexGrid1.Row = 0
MSHFlexGrid1.Col = 0
MSHFlexGrid1.Text = ""
MSHFlexGrid1.Col = 1
MSHFlexGrid1.Text = "公司名称"
MSHFlexGrid1.Col = 2
MSHFlexGrid1.Text = " 月"
MSHFlexGrid1.Col = 3
MSHFlexGrid1.Text = " 日"
MSHFlexGrid1.Col = 4
MSHFlexGrid1.Text = " 消费金额"
MSHFlexGrid1.Col = 5
MSHFlexGrid1.Text = " 消费卡号"
MSHFlexGrid1.Col = 6
MSHFlexGrid1.Text = " 消费部门"
MSHFlexGrid1.Col = 7
MSHFlexGrid1.Text = " 备 注"
MSHFlexGrid1.Col = 8
MSHFlexGrid1.Text = " 操作员"
MSHFlexGrid1.Col = 9
MSHFlexGrid1.Text = " 操作日期"
MSHFlexGrid1.Col = 10
MSHFlexGrid1.Text = " 消费项目"
MSHFlexGrid1.ColWidth(0) = 200
MSHFlexGrid1.ColWidth(1) = 1200
MSHFlexGrid1.ColWidth(2) = 420
MSHFlexGrid1.ColWidth(3) = 420
MSHFlexGrid1.ColWidth(4) = 1000
MSHFlexGrid1.ColWidth(5) = 1000
MSHFlexGrid1.ColWidth(6) = 1200
MSHFlexGrid1.ColWidth(7) = 800
MSHFlexGrid1.ColWidth(8) = 1800
MSHFlexGrid1.ColWidth(9) = 600
re10.MoveFirst
m = 0
j = 0
For m = 1 To re10.RecordCount
my = re10.book
MSHFlexGrid1.Row = m
For j = 0 To re10.Fields.Count - 1
MSHFlexGrid1.Col = j + 1
MSHFlexGrid1.Text = re10.Fields(j).Value & ""
MSHFlexGrid1.CellAlignment = flexAlignLeftCenter
Next j
MSHFlexGrid1.Refresh
j = j + 1StatusBar1.SimpleText = "各合同客户累计共有:" & my & "条消费项目"
re10.MoveNext
Next m
With MSHFlexGrid1
If .Rows > 1 Then
.FillStyle = flexFillRepeat
For i = .FixedRows + 1 To .Rows - 1 Step 2
.Row = i
.Col = .FixedCols
.ColSel = .Cols() - .FixedCols
.CellBackColor = &H8000000F 'vbInfoBackground ' light grey
Next i
.FillStyle = flexFillSingle
'.Sort = flexSortGenericAscending
'.MergeCells = flexMergeRestrictColumns
End If
End WithEnd Sub
mshflexgrid1.text
mshflexgrid1.col=0
mshflexgrid1.text