雁无留踪之意,水无取影之心
问题总结:
(一)让数据库随工程的移动不影响工程的运行
(1)使用ADODC控件时,为了达到目的,只有在代码中设置ADODC的ConnectionString属性,用App.Path实现相对路径
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=" & App.Path & "\imformation.mdb"
然后设置命令类型为adCmdText Adodc1.CommandType = adCmdText
然后设置RecordSource属性 Adodc1.RecordSource = "select * from [user]" [user]是为了避免user是关键字
最后还要刷新一下 Adodc1.Refresh
(2)使用ADODB对象模型,用Recordset对象作为DataSource的数据源
Private Sub Form_Load()
Set conn = New ADODB.Connection
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.3.51;Persist Security Info=False;Data Source=" & App.Path & "\imformation.mdb"
conn.Open
Dim RST As ADODB.Recordset
Set RST = New ADODB.Recordset
Rst.CursorLocation = adUseClient '设置游标引擎的位置为adUseClient,当用于客户端Recordset或Connection对象时,只能设置为adUseClient
RST.Open "select * from user", conn, 2, 2
Set DataGrid1.DataSource = RST
End Sub
(二)焦点的问题
大多数控件都有TabStop和TabIndex两个属性,与TAB按键有关的,如果TabStop设置为TURE,则在运行的时候,TAB按键会移动到上面,即可以用TAB按键获得焦点,当设置为FLASE时,将不能通过TAB获得焦点,同时关于LOAD后焦点落在哪个控件上,先起作用的是TabStop属性只要有设置为TURE的,就不可能落到FLASE的上面,如果有几个都为TURE时,再看TABINDEX属性,焦点设置在小的上面,如果都是FLASH时,焦点落在TABINDEX最小的上面,TAB按键不起作用,当改变一个TABINDEX属性值时,其它的也会跟着变化,有规律,自己可以去试试,我就不说了
有什么不足的地方,版主补充一下,各位有什么好的意见也发表一下
[此贴子已经被作者于2006-12-21 22:24:31编辑过]