大侠救我
解决方案 »
- VB+SQL设计的程序 出现实时错误 转换溢出了int列 怎么回事?
- 编译错误
- 高人!二进制文件能不能往里插入一段数据流啊?如果能,怎么插呢?如果不能,那该怎么办呢?
- 怎样识别MODEM的驱动已经加载了?
- Instr function, loop 还有转换大小写UCase LCase,求助。
- 小问题,哥们们进来看看
- 帮帮菜鸟好吗?小弟很急需一些关于水晶报表的例子或中文帮助!
- VB开发的个人防火墙软件,测试,来着有分,要源程序的开口
- 为什么"她"Girl1983(长发女生)是名人?最近是不是发生了什么事情?
- 数据如何备份??
- savepicture这函数怎么用?
- 单片机跟PC机通信问题(用VB控件mscomm)
定义一个变量保存字段的最大长度
在付给MSFlexGrid 所在的单元格
object.ScaleY (height, fromscale, toscale)ScaleX 和 ScaleY 方法的语法包含如下部分:部分 描述
object 可选的。一个对象表达式 ,该对象一定能在“应用于”列表中找到。如果省略 object,则带有焦点的 Form 对象缺省为 object。
width 必需的。为 object 指定被转换的度量单位的数量。
height 必需的。为 object 指定被转换的度量单位的数量。
fromscale 可选的。一个常数或数值,按照下列设置中的描述,指定 object 的 width 或 height 从哪一种坐标系统转换。fromscale 可取的数值与 ScaleMode 属性的数值加上 HiMetric 的新数值相同。
toscale 可选的。一个常数或数值,按照下列设置中的描述,指定 object 的 width 或 height 转换到哪一种坐标系统。toscale 可取的数值与 ScaleMode 属性的数值加上 HiMetric 的新数值相同。
设置用于 fromscale 和 toscale 设置有:常数 数值 描述
vbUser 0 用户定义:指示 object 的宽度和高度设置为自定义值。
vbTwips 1 缇(每逻辑英寸 1440 缇;每逻辑厘米 567 缇)。
vbPoints 2 磅(每逻辑英寸 72 点)。
vbPixels 3 像素 (显示器或打印机分辨率的最小单位)。
vbCharacters 4 字符(水平 = 每单位 120 缇,垂直 = 每单位 240 缇)。
vbInches 5 英寸
vbMillimeters 6 毫米
vbCentimeters 7 厘米
vbHimetric 8 HiMetric。如果省略 fromscale,则 HiMetric 为缺省值。
vbContainerPosition 9 决定控件位置。
vbContainerSize 10 决定控件大小。
说明ScaleX 和 ScaleY 方法按 fromscale 指定的度量单位取值(width 或 height),并将它转换为 toscale 指定的度量单位下相应的值。
也可以结合 PaintPicture 方法使用 ScaleX 和 ScaleY。
Dim L1 As Integer 'L1表示某一列的最大字符数
Dim i As Integer
For i = 1 To MSFlexGrid1.Rows
If Len(Trim(MSFlexGrid1.TextMatrix(i, 1))) > L1 Then
L1 = Len(Trim(MSFlexGrid1.TextMatrix(i, 1)))
End If
Next i
'转换成列的宽度
MSFlexGrid1.ColWidth(1) = L1 * 300 '一个汉字用300,字母用1500
Dim i As Integer
Dim L2 As Integer For i = 1 To MSFlexGrid1.Cols - 1
L1 = Len(Trim(MSFlexGrid1.TextMatrix(1, i)))
L2 = Len(Trim(MSFlexGrid1.TextMatrix(0, i)))
If Len(Trim(MSFlexGrid1.TextMatrix(1, i))) < Len(Trim(MSFlexGrid1.TextMatrix(0, i))) Then
MSFlexGrid1.ColWidth(i) = L2 * 300
Else
MSFlexGrid1.ColWidth(i) = L1 * 300
End If
Next i
还有怎么判断选定的是哪个行啊,我想用这个控制一个LIST的位置!!LIST显示此行内容!
Dim L1 As Integer 'L1表示某一列的最大字符数
Dim i As Integer
For i = 1 To MSFlexGrid1.Rows
If Len(Trim(MSFlexGrid1.TextMatrix(i, 1))) > L1 Then
L1 = Len(Trim(MSFlexGrid1.TextMatrix(i, 1)))
End If
Next i
'转换成列的宽度
MSFlexGrid1.ColWidth(1) = L1 * 300
Dim Max As Integer
Dim i As Integer
Dim j As interger
For j = 0 To MSFlexGrid1.Cols - 1
Max = 0
For i = 0 To MSFlexGrid1.Rows - 1
If Len(Trim(MSFlexGrid1.TextMatrix(i, j))) > Max Then Max = Len(Trim(MSFlexGrid1.TextMatrix(i, j)))
Next i
MSFlexGrid1.ColWidth(j) = Max * 300
Next j
End Sub
Dim i, j As Integer
Dim Max As Double
With MSFlexGrid1
For i = 0 To .Cols - 1
Max = 0
If .ColWidth(i) <> 0 Then
For j = 0 To .Rows - 1
If Me.TextWidth(.TextMatrix(j, i)) > Max Then
Max = Me.TextWidth(.TextMatrix(j, i))
End If
Next
.ColWidth(i) = Max + 110
End If
Next
End With