作者在 2013-03-14 04:46:16 发布以下内容
问题1: 怎样从表单返加一个值?
答案1: 可以在模式表单的unload事件中用return来返回一个值。
问题2: 怎样在表单设计器中把属性或方法添加到表单中?
答案2: 用表单设计器窗口或属性/事件/激活的方法窗口,从菜单中选择表
单。最初的两个选择是新属性和新方法。选择你想要加入的一个并填写属性
或方法的名称,新建的属性将出现在属性窗口的最底部。
问题3: 我把的工具条或设计窗口移出了屏幕,怎样把它移回来?
答案3: 工具条或窗口的位置保存在vfp主目录下的foxuser.dbf表中。如果
删除或修改该文件,你的工具条和窗口将恢复他们的默认位置或你指定的位置。
或从系统菜单的窗口菜单中选择重新安排全部。
问题4: 当从valid事件返回.f.值时,如何避免’无效的的用户输入了’信息?
答案4: 用 0来替换.f.
当你从valid事件返回数值时,也就是在设置可取得焦点的控件的tab order。
问题5: 模式表单和非模式表单的区别是什么?
答案5: 模式表单一般地被用来处理错误报告,或者请求用户确认操作等。
在模式表单中,菜单不能使用。如果需要,模式表单也提供应用’等待状态’。
非模式表单提供更多的灵活性,它允许用户通过菜单操作,在表单中移动。
问题6: 为什么编译后的程序运行时,屏幕一闪就退出了,为什么?
答案6: 你需要在你的程序中建立’等待状态’。可以用read events命令来建
立等待状态。要清除等待状态,可使用clear events命令。如果你只有一个屏
幕,把表单的windowstate属性设置为modal。这也提供等待状态,但是不允许
你使用菜单。当模式表单被释放时,等待状态结束并返回至操作系统。
问题7: 为什么当我建立表单时,我用set命令设置的环境变量返回到了它们的默认值。
答案7: 这是由于你的表单的数据会话期设置为私有数据工作期。很多"set"
命令仅对当前数据工作期有效。当你拥有私有数据工作期时,你必须再次确立
那些设置值。要达到这一目的,你可以建立一个用于环境设置的类。在表单的
init事件中设置你的环境值而在表单的destroy事件中恢复其原始值。
问题8: 我在pageframe中的一个页中改变了记录指针,但我转到其他的页时,
其他的页中的数据仍然是原记录的值。为什么?
答案8: 你需要在你的每一页activate()中放置代码来确信显示当前记录值。
如果你在某处执行了thisform.refresh()命令,vfp仅刷新pageframe的当前页
面上的内容。试着在每个页(page)的activate()中调用this.refresh()。 &n bsp;
问题9: 当我运行表单时,它什么也不显示。表单本身是显示了,但其中的任何对象都不可见
。
答案9: 试着把lockscreen属性设置为.f.。
问题10: 表单上有一对象,但我看不见它,我怎样选择并修改它?
答案10: 打开属性窗口,该窗口中有一下拉列表,你可从中选择你想编辑的对象。
一但你想编辑的对象在下拉列表中高亮显示,你就可以修改该对象。要在表单设
计器中用鼠标调整它(或实际看到该对象),从菜单中选择"格式",然后选择"带到前面"。
问题11: 我怎样把一个类从一个类库复制到另一类库中?
答案11: 在专业版中,你可以两次打开类浏览器,从第二个类浏览器中类
型下拉列表框中拖动类的图标到第二个类浏览器中。确信拖动它到另一个类
浏览器的表单区中。你可以看到一个复制光标(带箭头的加号)。如果你是
使用项目管理器且在项目中有两个类库,你可以从一个类库中拖动一个类到
另一个类库中。但若目标类库中已有相同名字的类存在,则操作不会成功。
也可用vfp 命令来完成这一任务:
add class mytextbox of mylib1.vcx to mylib2.vcx.
答案1: 可以在模式表单的unload事件中用return来返回一个值。
问题2: 怎样在表单设计器中把属性或方法添加到表单中?
答案2: 用表单设计器窗口或属性/事件/激活的方法窗口,从菜单中选择表
单。最初的两个选择是新属性和新方法。选择你想要加入的一个并填写属性
或方法的名称,新建的属性将出现在属性窗口的最底部。
问题3: 我把的工具条或设计窗口移出了屏幕,怎样把它移回来?
答案3: 工具条或窗口的位置保存在vfp主目录下的foxuser.dbf表中。如果
删除或修改该文件,你的工具条和窗口将恢复他们的默认位置或你指定的位置。
或从系统菜单的窗口菜单中选择重新安排全部。
问题4: 当从valid事件返回.f.值时,如何避免’无效的的用户输入了’信息?
答案4: 用 0来替换.f.
当你从valid事件返回数值时,也就是在设置可取得焦点的控件的tab order。
问题5: 模式表单和非模式表单的区别是什么?
答案5: 模式表单一般地被用来处理错误报告,或者请求用户确认操作等。
在模式表单中,菜单不能使用。如果需要,模式表单也提供应用’等待状态’。
非模式表单提供更多的灵活性,它允许用户通过菜单操作,在表单中移动。
问题6: 为什么编译后的程序运行时,屏幕一闪就退出了,为什么?
答案6: 你需要在你的程序中建立’等待状态’。可以用read events命令来建
立等待状态。要清除等待状态,可使用clear events命令。如果你只有一个屏
幕,把表单的windowstate属性设置为modal。这也提供等待状态,但是不允许
你使用菜单。当模式表单被释放时,等待状态结束并返回至操作系统。
问题7: 为什么当我建立表单时,我用set命令设置的环境变量返回到了它们的默认值。
答案7: 这是由于你的表单的数据会话期设置为私有数据工作期。很多"set"
命令仅对当前数据工作期有效。当你拥有私有数据工作期时,你必须再次确立
那些设置值。要达到这一目的,你可以建立一个用于环境设置的类。在表单的
init事件中设置你的环境值而在表单的destroy事件中恢复其原始值。
问题8: 我在pageframe中的一个页中改变了记录指针,但我转到其他的页时,
其他的页中的数据仍然是原记录的值。为什么?
答案8: 你需要在你的每一页activate()中放置代码来确信显示当前记录值。
如果你在某处执行了thisform.refresh()命令,vfp仅刷新pageframe的当前页
面上的内容。试着在每个页(page)的activate()中调用this.refresh()。 &n bsp;
问题9: 当我运行表单时,它什么也不显示。表单本身是显示了,但其中的任何对象都不可见
。
答案9: 试着把lockscreen属性设置为.f.。
问题10: 表单上有一对象,但我看不见它,我怎样选择并修改它?
答案10: 打开属性窗口,该窗口中有一下拉列表,你可从中选择你想编辑的对象。
一但你想编辑的对象在下拉列表中高亮显示,你就可以修改该对象。要在表单设
计器中用鼠标调整它(或实际看到该对象),从菜单中选择"格式",然后选择"带到前面"。
问题11: 我怎样把一个类从一个类库复制到另一类库中?
答案11: 在专业版中,你可以两次打开类浏览器,从第二个类浏览器中类
型下拉列表框中拖动类的图标到第二个类浏览器中。确信拖动它到另一个类
浏览器的表单区中。你可以看到一个复制光标(带箭头的加号)。如果你是
使用项目管理器且在项目中有两个类库,你可以从一个类库中拖动一个类到
另一个类库中。但若目标类库中已有相同名字的类存在,则操作不会成功。
也可用vfp 命令来完成这一任务:
add class mytextbox of mylib1.vcx to mylib2.vcx.
如果mylib2里有另一个同名的类,操作也不会成功。但若在命令后加overwrite子句,原有的
类将被代替。
问题12: 怎样能不使用属性窗口而进入容器?
答案12: 在对象上单击鼠标右键。从弹出菜单中选择"编辑"。如果你是在
网格上操作,你必须选择对象所在的列并使用属性窗口来选你想编辑的特定
的目的。如果你想选择header类或列的其他的目的,你必须使用属性窗口。
问题13: 如何把数组作为参数传递给表单?
答案13: 在foxpro中,数组必须按址传递。set udfparms决定参数的传递方
式。在默认情况下,当你用do...with调用过程或表单时,参数是按址传递。
在函数或方法中,参数是按值传递。
dimension array[10]
do form form1 with array
在这种情况下,你必须用一个"@"符号强迫参数的传递为按址传递。
dimension array[10]
myform = createobject("form1", @myarray)
问题14: 如何在应用程序中避免出现vfp的窗口标题?
答案14: 在config.fpw文件中,加"title = 你的标题"行。
另外, 也可以在主程序中加入:
_screen.caption="你的标题"
问题15: 如何避免vfp的欢迎屏幕?
答案15: 在你的快捷方式或图标的程序行中,在vfp.exe后面加"-t"( 不要引号)。
问题16: 在win95中,所有窗口左上角的图标全部是fox。我能代替它吗?
答案16: 在你的开始程序,加入:
_screen.icon="vitus.ico"
在你的表单的load事件中,加入:
thisform.icon ="vitus.ico"
或者在表单设计器的属性窗口中设置它的值。
问题17: 我怎样除掉表单标题条?
答案17: 把表单的caption属性设置为任意串
把表单的maxbutton属性设置为.f.
把表单的minbutton属性设置为.f.
把表单的movable属性设置为.f.
在表单的init中写入
this.caption=’’
问题18: 事件的触发顺序是怎样的?
答案18: 在帮助文件中查看 "vfp事件序列"。
另外,在vfp\samples\controls\events目录中,有一个名为events.app的
程序演示了不同对象的事件的触发顺序。
问题19: 我怎样检查变量是否存在?
答案19: 使用type()函数来检查一个变量是否存在。
if type("var") = .t.
messagebox("it exists",0,"")
endif
或你可以检查是否type("var")="u",若是,则变量不存在。
问题20: vfp的表的最大容量是多少?
答案20: 2 gb,且在将来版本中该限制可能被取消。
类将被代替。
问题12: 怎样能不使用属性窗口而进入容器?
答案12: 在对象上单击鼠标右键。从弹出菜单中选择"编辑"。如果你是在
网格上操作,你必须选择对象所在的列并使用属性窗口来选你想编辑的特定
的目的。如果你想选择header类或列的其他的目的,你必须使用属性窗口。
问题13: 如何把数组作为参数传递给表单?
答案13: 在foxpro中,数组必须按址传递。set udfparms决定参数的传递方
式。在默认情况下,当你用do...with调用过程或表单时,参数是按址传递。
在函数或方法中,参数是按值传递。
dimension array[10]
do form form1 with array
在这种情况下,你必须用一个"@"符号强迫参数的传递为按址传递。
dimension array[10]
myform = createobject("form1", @myarray)
问题14: 如何在应用程序中避免出现vfp的窗口标题?
答案14: 在config.fpw文件中,加"title = 你的标题"行。
另外, 也可以在主程序中加入:
_screen.caption="你的标题"
问题15: 如何避免vfp的欢迎屏幕?
答案15: 在你的快捷方式或图标的程序行中,在vfp.exe后面加"-t"( 不要引号)。
问题16: 在win95中,所有窗口左上角的图标全部是fox。我能代替它吗?
答案16: 在你的开始程序,加入:
_screen.icon="vitus.ico"
在你的表单的load事件中,加入:
thisform.icon ="vitus.ico"
或者在表单设计器的属性窗口中设置它的值。
问题17: 我怎样除掉表单标题条?
答案17: 把表单的caption属性设置为任意串
把表单的maxbutton属性设置为.f.
把表单的minbutton属性设置为.f.
把表单的movable属性设置为.f.
在表单的init中写入
this.caption=’’
问题18: 事件的触发顺序是怎样的?
答案18: 在帮助文件中查看 "vfp事件序列"。
另外,在vfp\samples\controls\events目录中,有一个名为events.app的
程序演示了不同对象的事件的触发顺序。
问题19: 我怎样检查变量是否存在?
答案19: 使用type()函数来检查一个变量是否存在。
if type("var") = .t.
messagebox("it exists",0,"")
endif
或你可以检查是否type("var")="u",若是,则变量不存在。
问题20: vfp的表的最大容量是多少?
答案20: 2 gb,且在将来版本中该限制可能被取消。