vb 怎么制作表格 VB怎么制作出来网页上的那种表格,要求程序能控制每个单元格的内容。(我感觉表格其实很重要,为啥VB没有frontpage或者asp.net那种简单的制作表格的方法呢)麻烦解答,谢谢。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 要做表格,VBA超级强大,何必用VB呢。 什么listview,datagrid,mshflex这些都是表格啊。我也才学的。不过感觉还是比不上VBA做表格厉害。 我想要frontpage那种,汇完表格后能在控件里的便捷的加减行、列;能自由调整单元格高、宽;能在单元格里填写内容。 想拿VB做简单的B/S系统嘛。。恩,看到别人做过,顶上去明天早上嘛,VB党高手等等已经就寝了 拉一个ocw控件,和操作excel一样,或用ole直接嵌入一个excel 本人用mshflex做的,我的软件页面是www.kkh86.com/fifansoft/meditor下载安装后,安装上下附带一份公开的源代码,楼主可参考 mshflex 有中文版详细用法说明吗?这个能改变表格单元的高、宽和边框颜色什么的吗?怎么做 你那个是html里面的表格,实际就是<table><th><tr><td>一系列的标签堆积起来的,在frontpage里面通过所见即所得操作的。话说现在还有人用这个工具么,基本被dreamweaver、myeclipse什么替代了。vb里面都是用控件。跟你要求的功能最符合的应该就是listview控件了,其他什么grid、flex的都是和数据库搭配使用的。不过listview不能像你要求的那样在设计模式下就可以删减的,得在代码里处理数据删减表格,其实vb里面的控件基本都是这样,设计模式下只能做个框架,跟数据什么的基本无关。以下是个人在使用listview过程中的总结:1.几个常用属性LabelEdit设置为1这样第一列的数据就不可以更改了GridLines设置为true可以显示网格View设置为3,是报表样式2.ListView1.HitTest(X, Y).Index,可以得到当前鼠标下的行3.它的子集是listitem,其下有好多方法和属性,通过它可以访问每行每列ListView1.ListItems.Item(1).Text'第1行第1列ListView1.ListItems.Item(1).SubItems(1)'第1行第2列ListView1.ListItems.Item(1).SubItems(2)'第1行第3列另外可以用SubItems达到相同效果,如下:ListView1.ListItems.Item(1).Text'第1行第1列ListView1.ListItems.Item(2).ListSubItems.Item(1)'第1行第2列ListView1.ListItems.Item(2).ListSubItems.Item(2)'第1行第3列4.ListView1.SelectedItem.Index,表示当前选中项,如果没有的项目的话会报错5.listview控件中没有change事件,像Combo1_Change,这样的话我们用户选择不同是否选择了不同条目我们就无法直接得知,不过可以通过事件KeyDown配合参数KeyCode来处理Dim lngTemp As LongIf ListView1.ListItems.Count = 0 Then Exit SublngTemp = ListView1.SelectedItem.IndexSelect Case KeyCodeCase 38: If lngTemp > 1 Then lngTemp = lngTemp - 1'按了上箭头Case 40: If lngTemp < lvw1.ListItems.Count Then lngTemp = lngTemp + 1'按了下箭头Case 13: '回车End Select6.添加表头ListView1.ColumnHeaders.Add , , "编号", 1500ListView1.ColumnHeaders.Add , , "状态", 10007.添加每行数据方法一:Dim objLI As ListItemSet objLI = ListView1.ListItems.Add(, "Row1", "第1行第1列")objLI.SubItems(1) = "第1行第2列"objLI.SubItems(2) = "第1行第3列"方法二:ListView1.ListItems.Add 1, , "第1行第1列"ListView1.ListItems(1).ListSubItems.Add , , "第1行第2列"ListView1.ListItems(1).ListSubItems.Add , , "第1行第3列"8.综合应用ListView1.ColumnHeaders.Add , , "编号", 1500ListView1.ColumnHeaders.Add , , "状态", 1000,lvwColumnCenterListView1.ColumnHeaders.Add , , "IP", 2000ListView1.ColumnHeaders.Add , , "ID", 1000ListView1.ColumnHeaders.Add , , "连接时间", 2000'填入数据采用方法一:Dim objLI As ListItemDim i&ListView1.ListItems.ClearFor i = 1 To UBound(tAccount) Set objLI = ListView1.ListItems.Add(, "Row" & i, tAccount(i).strNo) objLI.SubItems(1) = tAccount(i).isUsing objLI.SubItems(2) = tAccount(i).strClientIP objLI.SubItems(3) = tAccount(i).lngWinsockIndex objLI.SubItems(4) = tAccount(i).strConnectTimeNext'填入数据采用方法二:Dim i&ListView1.ListItems.ClearFor i = 1 To UBound(tAccount) ListView1.ListItems.Add i, , tAccount(i).strNo ListView1.ListItems(i).ListSubItems.Add , , tAccount(i).isUsing ListView1.ListItems(i).ListSubItems.Add , , tAccount(i).strClientIP ListView1.ListItems(i).ListSubItems.Add , , tAccount(i).lngWinsockIndex ListView1.ListItems(i).ListSubItems.Add , , tAccount(i).strConnectTimeNextsysdzw21:02 2008-8-6 有没有listviewl的详细说明文档,包括属性页设置。谢谢。 我上面说的足够对付使用了。msdn中完全版中应该有。 另外上面那个实例中的tAccount是什么? webbrowser后台抓色能实现吗?? vb添加背景音乐的问题? 知道如何最快的构造出图形异型窗体吗,我来告诉你,不服你可以写个更高效的------纯粹活跃下群里的气氛。 VB如何监控是否有程序访问Wan网 webbrowser保存一个网页中的超连接 请指点一下~这是什么原因! 诡异现象与大家分享 最近发现好多人在无聊地散分,哎,可惜。★们以及快成★的,就不能捐些给那些需要分的人嘛?!我仅剩的29分发个贴,希望大家别太感冒.... 又是打包的问题! 有没有字符查找替换的函数啊 亲,帮我详细看一下vb代码吧,谢谢 VB一题
我也才学的。不过感觉还是比不上VBA做表格厉害。
恩,看到别人做过,顶上去明天早上嘛,VB党高手等等已经就寝了
www.kkh86.com/fifansoft/meditor
下载安装后,安装上下附带一份公开的源代码,楼主可参考
以下是个人在使用listview过程中的总结:1.几个常用属性
LabelEdit设置为1这样第一列的数据就不可以更改了
GridLines设置为true可以显示网格
View设置为3,是报表样式
2.ListView1.HitTest(X, Y).Index,可以得到当前鼠标下的行
3.它的子集是listitem,其下有好多方法和属性,通过它可以访问每行每列
ListView1.ListItems.Item(1).Text'第1行第1列
ListView1.ListItems.Item(1).SubItems(1)'第1行第2列
ListView1.ListItems.Item(1).SubItems(2)'第1行第3列
另外可以用SubItems达到相同效果,如下:
ListView1.ListItems.Item(1).Text'第1行第1列
ListView1.ListItems.Item(2).ListSubItems.Item(1)'第1行第2列
ListView1.ListItems.Item(2).ListSubItems.Item(2)'第1行第3列
4.ListView1.SelectedItem.Index,表示当前选中项,如果没有的项目的话会报错
5.listview控件中没有change事件,像Combo1_Change,这样的话我们用户选择不同是否选择了不同条目我们就无法直接得知,不过可以通过事件KeyDown配合参数KeyCode来处理
Dim lngTemp As Long
If ListView1.ListItems.Count = 0 Then Exit Sub
lngTemp = ListView1.SelectedItem.Index
Select Case KeyCode
Case 38: If lngTemp > 1 Then lngTemp = lngTemp - 1'按了上箭头
Case 40: If lngTemp < lvw1.ListItems.Count Then lngTemp = lngTemp + 1'按了下箭头
Case 13: '回车
End Select
6.添加表头
ListView1.ColumnHeaders.Add , , "编号", 1500
ListView1.ColumnHeaders.Add , , "状态", 1000
7.添加每行数据
方法一:
Dim objLI As ListItem
Set objLI = ListView1.ListItems.Add(, "Row1", "第1行第1列")
objLI.SubItems(1) = "第1行第2列"
objLI.SubItems(2) = "第1行第3列"
方法二:
ListView1.ListItems.Add 1, , "第1行第1列"
ListView1.ListItems(1).ListSubItems.Add , , "第1行第2列"
ListView1.ListItems(1).ListSubItems.Add , , "第1行第3列"
8.综合应用
ListView1.ColumnHeaders.Add , , "编号", 1500
ListView1.ColumnHeaders.Add , , "状态", 1000,lvwColumnCenter
ListView1.ColumnHeaders.Add , , "IP", 2000
ListView1.ColumnHeaders.Add , , "ID", 1000
ListView1.ColumnHeaders.Add , , "连接时间", 2000
'填入数据采用方法一:
Dim objLI As ListItem
Dim i&
ListView1.ListItems.Clear
For i = 1 To UBound(tAccount)
Set objLI = ListView1.ListItems.Add(, "Row" & i, tAccount(i).strNo)
objLI.SubItems(1) = tAccount(i).isUsing
objLI.SubItems(2) = tAccount(i).strClientIP
objLI.SubItems(3) = tAccount(i).lngWinsockIndex
objLI.SubItems(4) = tAccount(i).strConnectTime
Next
'填入数据采用方法二:
Dim i&
ListView1.ListItems.Clear
For i = 1 To UBound(tAccount)
ListView1.ListItems.Add i, , tAccount(i).strNo
ListView1.ListItems(i).ListSubItems.Add , , tAccount(i).isUsing
ListView1.ListItems(i).ListSubItems.Add , , tAccount(i).strClientIP
ListView1.ListItems(i).ListSubItems.Add , , tAccount(i).lngWinsockIndex
ListView1.ListItems(i).ListSubItems.Add , , tAccount(i).strConnectTime
Nextsysdzw
21:02 2008-8-6
谢谢。