| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1953 人关注过本帖
标题:这个表格控件 你见过吗?
只看楼主 加入收藏
lanhaiyifei
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-12-4
收藏
 问题点数:0 回复次数:8 
这个表格控件 你见过吗?
小菜现在开发vb程序连接的access数据库。
其中有 用户 这个数据库表
我想在vb中用表格控件来 只是罗列 用户名 其他的不要。
不知道应该用什么控件好呢?
效果 当然是 一行 一行 的了 这个不解释 呵呵
效果如下图所示:

图片附件: 游客没有浏览图片的权限,请 登录注册

搜索更多相关主题的帖子: 表格 数据库表 用户名 开发 
2012-12-04 23:02
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
自己做控件吧。

控件内部放一个 listbox 对象,不显示的。然后数据添加到里再进行处理 。
一、专用属性。
1、list() ,数组。对应 listbox 的属性
2、listheight ,inter ,每个单元格高
3、listwidth ,inter ,每个单元格宽。
4、listcount ,inter ,单元格计数

二、专用函数。
1、AddItem  ,添加数据,以下三个都对应 listbox 的函数。
2、Clear
3、RemoveItem
4、Paint    ,重绘函数
5、改变大小的事件。调用paint 函数

三、实现方法:
paint 函数:
根据 控件宽,计算出每行可以放置的 个数。
根据 每行可以放置的个数,计算总行数。
根据总行数,计算 内容区域的总高。
当总高》控件高时,需要显示一个滚动条。
   控件宽度减去滚动条宽,然后重新计算 每行个数及总行数、总高。
   滚动条:每次变化值:一行 和 可显示的总行数-1。最小值:1,最大值:总行数。
显示:根据总行数和每行个数。用两个 for 循环套。
   滚动条有数据时,需要根据滚动条进行每行的Y值进行修正。
   先画一个矩形,然后在矩形中显示 内容。 内容从 listbox 中调用。
   当 计算出来的序号超过 总数据量时,只画矩形,而不显示内容,以达到最后一行满格子的目的。


没有编程环境,无法测试。

授人于鱼,不如授人于渔
早已停用QQ了
2012-12-05 11:11
lanhaiyifei
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-12-4
收藏
得分:0 
回复 2楼 风吹过b
本人小菜一个啊  
用控件还是个问题呢
自己做,这挑战也太大了些
不过还是感谢亲的答案

2012-12-05 11:57
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4947
专家分:30084
注 册:2008-10-15
收藏
得分:0 
WIN7中,没装VB6 ,没有 向导,有些接口不记得怎么写了。
一向就是用向导来生成这些接口的。

实际主要就是坐标的认真和显示。其它都是使用 listbox 控件的 list 属性来操作的。

授人于鱼,不如授人于渔
早已停用QQ了
2012-12-05 13:00
Artless
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:103
帖 子:4211
专家分:28888
注 册:2009-4-8
收藏
得分:0 
datagrid

无知
2012-12-05 13:10
lanhaiyifei
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-12-4
收藏
得分:0 
回复 5楼 Artless
datagrid 好像不可以吧
它的一列 是绑定的 数据库的 一列吧


而我这个是数据库的一列  
来用表格显示哦
2012-12-05 13:28
lanhaiyifei
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-12-4
收藏
得分:0 
回复 4楼 风吹过b
用listbox  不怎么好看
而且我这个用户的 数量 是变化的
用listbox  排列   显示 都不太方便
2012-12-05 13:31
yz1025
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:6
帖 子:491
专家分:919
注 册:2012-10-26
收藏
得分:0 
以下是引用lanhaiyifei在2012-12-5 13:28:36的发言:

datagrid 好像不可以吧
它的一列 是绑定的 数据库的 一列吧


而我这个是数据库的一列  
来用表格显示哦


或许是数据库的原因,我没在用数据库,
但是一般有方法Object.cell(x,y).text="",可以一格一格设置,
当然有些功能,要用些诀窍去解决,这就是经验了,
高深点的,还能像EXCEL一样,设定某几格合并或某几行合并,
或某些相同类别的行数,在左边使用+ - 号去缩放隐藏数据资料,
这也是EXCEL有的功能之一,应用方式太广无法一一列举,
先前同事拿LabView的datagrid来笑说VB6的datagrid很麻烦写,
于是我就自己做了个新的控件,仿NI的功能,一个二维阵列资料,
只要一行代码丢进去,全部就能自动列出到控件里面,就连预设
datagrid不支持鼠标上下滚动的问题,也一并解决。

但是现在知道既有EXCEL控件可用,就不用浪费时间去搞这些了,
自己写控件一开始是很有成就感,但是慢慢的就会发现很麻烦,
当然除非你是专职靠卖控件赚钱的专家除外。

不要投我
2012-12-05 14:30
duantianya
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2016-9-7
收藏
得分:0 
看你的需求了,具体到哪些平台。如果是WinForm,等平台,可以试试Spread Studio;如果是前端使用表格,推荐试试SpreadJS。
2016-09-07 16:17
快速回复:这个表格控件 你见过吗?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.048716 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved