雪地裸体跪求答案:一定给分!

时间:2021-03-07 08:59:00
看了这么久的书,越看越糊涂了,想请教大家一个小问题:
手头有别人作好的一个对象,不知道是用"insert->contrlo"还是"insert->object"?
还是用"继承"这个对象的好?
另外别人做好的一个对象,只知道它的名称,怎么知道它是"stander_visual"还是"custom_visual","external visual"?或者“stander_class”or “custom_class”?
我不知道该怎样区分
谢谢!

9 个解决方案

#1


第一个问题:
在PB里,“Control”和“Object”都是类,只不过前者是可视类,后者是不可视类,叫法不同罢了。无论使用哪种方式创建的,对于PB库画板来说,都是UserObject,通过Insert-Object-UserObject或Insert-Control-UserObject都可以把它插入到Window里,当然,这个对象应该是可视的。另外的插入办法是通过PB的IDE左侧的对象树,直接用鼠标Drag就可以了,这种方法不仅可以插入可视的UserObject,还可以插入不可视的类(可以通过View-Non Visual object llist看到它)
第二个问题:
双击该对象,观察样式
1:如果仅仅是一个DataWindow或其它控件,说明该对象是从Standsrt Visual 继承的;
2:如果是多个控件的复合体,说明它是从Custom Visual继承的
3:如果是一个PB中不存在的控件,说明它可能是从External Visual 继承的
4:如果它没有Layout视图,说明它是从Custom Class 中继承的
5:如果它LayOut视图,但没有什么控件,说明它是从Standard Class中继承的

还有一个办法是右击该对象,选择Edit source,看看它的声明,Global type XXX from YYY,YYY就是祖先的类型

有问题可以给我发邮件:ynyu@sybase.com

#2


楼上的很详细了,我就帮顶一下得了。
一般用别人作好的控件/对象,都是直接使用,而不应该再继承的。尤其是在还不了解这个对象的情况下。只有在了解了对象的用法以后,觉得还需要进一步改进,才可能需要继承或者另外定义一个包含此对象的类,来实现更强的功能。

------------------玄之又玄,众妙之门

#3


1.都是USER OBJECT,没什么区别;
2.自己建几个NVO\VO比较一下名称和外观即可;

#4


横向--standard,custom

纵向--visual,nonvisual


既然是标准,就有pb基本控件的事件,属性等,反之custom则得自定义很多事件和属性

external:一般带libray,更好认了

楼主把问题复杂化了

#5


这个问题确实挺复杂的,把做好的对象拿来使用,还没有用,就要继承了
=============================================================
本贴已被我阅读过,顶一下,做个证明
楼主给点分,当做记念

#6


打开UserObject,标题栏上就显示出UO类型了,不过如果路径过长,会显示不完全的

#7


还有,楼主记得穿上衣服,容易感冒滴:)

#8


一楼分析的这么详细,帮你顶一下
其实用这个方法最直接了
右击该对象,选择Edit source,看看它的声明,Global type XXX from YYY,YYY就是祖先的类型

#9


可怜呀,小子,快点穿上吧,否则告你流氓罪.

#1


第一个问题:
在PB里,“Control”和“Object”都是类,只不过前者是可视类,后者是不可视类,叫法不同罢了。无论使用哪种方式创建的,对于PB库画板来说,都是UserObject,通过Insert-Object-UserObject或Insert-Control-UserObject都可以把它插入到Window里,当然,这个对象应该是可视的。另外的插入办法是通过PB的IDE左侧的对象树,直接用鼠标Drag就可以了,这种方法不仅可以插入可视的UserObject,还可以插入不可视的类(可以通过View-Non Visual object llist看到它)
第二个问题:
双击该对象,观察样式
1:如果仅仅是一个DataWindow或其它控件,说明该对象是从Standsrt Visual 继承的;
2:如果是多个控件的复合体,说明它是从Custom Visual继承的
3:如果是一个PB中不存在的控件,说明它可能是从External Visual 继承的
4:如果它没有Layout视图,说明它是从Custom Class 中继承的
5:如果它LayOut视图,但没有什么控件,说明它是从Standard Class中继承的

还有一个办法是右击该对象,选择Edit source,看看它的声明,Global type XXX from YYY,YYY就是祖先的类型

有问题可以给我发邮件:ynyu@sybase.com

#2


楼上的很详细了,我就帮顶一下得了。
一般用别人作好的控件/对象,都是直接使用,而不应该再继承的。尤其是在还不了解这个对象的情况下。只有在了解了对象的用法以后,觉得还需要进一步改进,才可能需要继承或者另外定义一个包含此对象的类,来实现更强的功能。

------------------玄之又玄,众妙之门

#3


1.都是USER OBJECT,没什么区别;
2.自己建几个NVO\VO比较一下名称和外观即可;

#4


横向--standard,custom

纵向--visual,nonvisual


既然是标准,就有pb基本控件的事件,属性等,反之custom则得自定义很多事件和属性

external:一般带libray,更好认了

楼主把问题复杂化了

#5


这个问题确实挺复杂的,把做好的对象拿来使用,还没有用,就要继承了
=============================================================
本贴已被我阅读过,顶一下,做个证明
楼主给点分,当做记念

#6


打开UserObject,标题栏上就显示出UO类型了,不过如果路径过长,会显示不完全的

#7


还有,楼主记得穿上衣服,容易感冒滴:)

#8


一楼分析的这么详细,帮你顶一下
其实用这个方法最直接了
右击该对象,选择Edit source,看看它的声明,Global type XXX from YYY,YYY就是祖先的类型

#9


可怜呀,小子,快点穿上吧,否则告你流氓罪.