# 这个嘛....

Posted by 纪文和 on September 20, 1999 at 19:05:23:

In Reply to: 纪兄，有关您回答[ 使Form show 且指定某一个控制项 SetFocus时出现Error] posted by 新手 on September 20, 1999 at 11:01:25:

: 测试的程式码如下:
: form1
: Private Sub Command1_Click()
: Unload Me
: Form2.Show
: End Sub

: form2
: Private Sub Form_Unload(Cancel As Integer)
: Form1.Show
: Form1.Command3.SetFocus
: End Sub
: 单单以新专案试验用您的以上之程式码是行得通，但若在真正写的程式码中就会产生错误讯息，属性全为True，都没错，您的方式我也试过了，有请教过别人，答案是Form1未Show其上之控制项就不能SetFocus，但以新专案试验却可以，搞不懂？

以上的测试程式码是根据您之前提出的问题, 而模拟出来的, 我再根据模拟出来的程式码, 测试看看程式是否会产生错误, 结果是不会有错误产生.

但是, 我自己在写程式时, 并不会如此使用, 就像您请教过的那个人说的一样, 通常我们要下 SetFocus 这个指令之前, 一定是这个物件所存在的 Form 已经 Show/Load 进来了, 否则程式根本找不到这个物件, 要如何 SetFocus 呢？

至于为何一个新的 Project 能在 Form 未 Show 时就可以 SetFocus, 我也不知道是为什么, 只能说是经验法则了, 反正在 VB 中这种情形很多, 不过这某些情况下可以, 某些情况下不行的功能, 就不要用它就好了.

VB入门网

Follow Ups: