datagrid对象和datagrid控件的问题

tollers 2005-03-24 09:11:06
两个工程,添加了相同的引用和部件,但在一个工程里,若将datagrid放在模块中,vb会认为这是datagrid对象,如
sub aaa(dt as datagrid)
dt.ColumnCount = 0
dt.ColumnLabel
'根据msdn,以上是datagrid对象的属性
end sub

但在另一个工程中,
sub aaa(dt as datagrid)
dt.Columns(1).Alignment
dt.AddNewMode
'根据msdn,以上是datagrid控件的属性,这些属性是datagrid对象所没有的
end sub

两个工程都添加了datagrid control部件的,而且是在同一台机器上的

现在我需要得到的是datagrid控件,怎么解决这个问题。谢了
...全文
119 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
sonique 2005-03-24
  • 打赏
  • 举报
回复
楼主请把问题描述清楚一点
lgxysl 2005-03-24
  • 打赏
  • 举报
回复
一般来说,控件是有界面的,而且一般来说控件的实例是要存入于空器中的,在模块中,是否能这样使用控件,我也不太清楚.毕竟VB不是一个真正的面向对象的编程语言.
你可以这样试试:
sub aaa(dt as new datagrid)
dt.Columns(1).Alignment
dt.AddNewMode
'根据msdn,以上是datagrid控件的属性,这些属性是datagrid对象所没有的
end sub

如果不行(我看这是不行的,不过我没有试过),可以这样:

一般来说,你引用一个控件,必然要在窗体中使用它,你可以在使用它的窗体中加载一个datagrid控件的实例(如果在一开始<在没有调用你的模块在的过程这前>,你不想让这个控件实例是可见的,你可以把它的可见性设为"不可见"),并把它命名为dts
把你的模块中的代码改写为:
sub aaa(dt as object)
dt.Visible=true
dt.Columns(1).Alignment
dt.AddNewMode
'根据msdn,以上是datagrid控件的属性,这些属性是datagrid对象所没有的
end sub

在应用它的窗体调用这个过程时:
aaa(dts)

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧