Private Sub test1_DblClick()Form2.Show test1.SelText = Form2.Text1.Text End Sub 这个可以吗?
给你一个例子,希望对你有点帮助Public Sub DataGrid1Show() Set rss = New Recordset Dim str As String Dim Userid As Long Userid = Combo1.ItemData(Combo1.ListIndex) Dim StartDate As Date Dim EndDate As Date Dim StartTime As Date Dim EndTime As Date StartDate = DateValue(DTPicker1.Value) EndDate = DateValue(DTPicker2.Value) StartTime = StartDate + "00:00:00" EndTime = EndDate + "23:59:59" If StartDate > EndDate Then MsgBox "请检查您输入的日期!", , "Warning" Exit Sub End If str = "select * from user_speday where userid= " & Userid & " and startspecday># " & StartTime & " # and endspecday<# " & EndTime & " # and (dateid=999 or dateid=1000) order by startspecday" rss.Open str, cnnView Set DataGrid1.DataSource = Nothing Set Adodc1.Recordset = rss Set DataGrid1.DataSource = Adodc1 Adodc1.Refresh DataGrid1.Refresh SetHeadEnd SubPrivate Sub SetHead() Dim i As IntegerFor i = 0 To DataGrid1.Columns.Count - 1 DataGrid1.Columns(i).Alignment = dbgCenter Next iDataGrid1.Columns(0).Visible = False DataGrid1.Columns(3).Visible = False DataGrid1.Columns(5).Visible = FalseDataGrid1.Columns(1).Width = 1800 DataGrid1.Columns(2).Width = 1800 DataGrid1.Columns(3).Width = 1000 DataGrid1.Columns(4).Width = 600DataGrid1.Columns(1).Caption = "开始日期" DataGrid1.Columns(2).Caption = "结束日期" DataGrid1.Columns(3).Caption = "请假类别" DataGrid1.Columns(4).Caption = "请假原因"End SubPublic Property Get getLeave() '在DATAGRID1中选中的一行数据 Dim col As New Collection Dim k As Integer If rss.RecordCount > 0 Then rss.MoveFirst For k = 0 To DataGrid1.Book - 2 rss.MoveNext Next kcol.Add rss.Fields("dateid") col.Add rss.Fields("startspecday") col.Add rss.Fields("endspecday") col.Add rss.Fields("yuanying")End If Set getLeave = col End Property
可以利用DBGrid的RowColChange事件,此时记录集已经迁移。而click事件发生时,记录集尚未迁移。Private Sub DBGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer) '在此访问Data控件记录集的数据 load NewForm Newform.TextName = data1.recordset!name ...... Newform.Show 1 End Sub注意:Data控建搭配DBGrid控件;ADODC控件搭配DataGrid控件。不可错配。
我以前就用msgbox来显示过listbox的各种属性的变化,结果是我根本没看过书就知道listbox的使用方法了可以自己研究的话还是自己研究一下比较好
ADO控件跟DBGRID关联之后,比较容易得到记录在记录集中的位置另外,最好用dbgrid的doubleclick事件,防止用户查看下方记录时误触发
我可以发个给你,[email protected]另外就是当用户点DBGrid中的一条记录时,就弹出一个窗体来显示该学生的所有档案信息最好是改成双击,不然用着会不舒服的
test1.SelText = Form2.Text1.Text
End Sub
这个可以吗?
Set rss = New Recordset
Dim str As String
Dim Userid As Long
Userid = Combo1.ItemData(Combo1.ListIndex)
Dim StartDate As Date
Dim EndDate As Date
Dim StartTime As Date
Dim EndTime As Date
StartDate = DateValue(DTPicker1.Value)
EndDate = DateValue(DTPicker2.Value)
StartTime = StartDate + "00:00:00"
EndTime = EndDate + "23:59:59"
If StartDate > EndDate Then
MsgBox "请检查您输入的日期!", , "Warning"
Exit Sub
End If
str = "select * from user_speday where userid= " & Userid & " and startspecday># " & StartTime & " # and endspecday<# " & EndTime & " # and (dateid=999 or dateid=1000) order by startspecday"
rss.Open str, cnnView
Set DataGrid1.DataSource = Nothing
Set Adodc1.Recordset = rss
Set DataGrid1.DataSource = Adodc1
Adodc1.Refresh
DataGrid1.Refresh
SetHeadEnd SubPrivate Sub SetHead()
Dim i As IntegerFor i = 0 To DataGrid1.Columns.Count - 1
DataGrid1.Columns(i).Alignment = dbgCenter
Next iDataGrid1.Columns(0).Visible = False
DataGrid1.Columns(3).Visible = False
DataGrid1.Columns(5).Visible = FalseDataGrid1.Columns(1).Width = 1800
DataGrid1.Columns(2).Width = 1800
DataGrid1.Columns(3).Width = 1000
DataGrid1.Columns(4).Width = 600DataGrid1.Columns(1).Caption = "开始日期"
DataGrid1.Columns(2).Caption = "结束日期"
DataGrid1.Columns(3).Caption = "请假类别"
DataGrid1.Columns(4).Caption = "请假原因"End SubPublic Property Get getLeave() '在DATAGRID1中选中的一行数据
Dim col As New Collection
Dim k As Integer
If rss.RecordCount > 0 Then
rss.MoveFirst
For k = 0 To DataGrid1.Book - 2
rss.MoveNext
Next kcol.Add rss.Fields("dateid")
col.Add rss.Fields("startspecday")
col.Add rss.Fields("endspecday")
col.Add rss.Fields("yuanying")End If
Set getLeave = col
End Property
'在此访问Data控件记录集的数据
load NewForm
Newform.TextName = data1.recordset!name
......
Newform.Show 1
End Sub注意:Data控建搭配DBGrid控件;ADODC控件搭配DataGrid控件。不可错配。