VB6.0中MSFlexGrid控件的用法

VB6.0中MSFlexGrid控件的用法,第1张

★呵呵!

>>

将文本赋值给MsFlexGrid的单元格

MsFlexGridTextMatrix(3,1)=”Hello”

>>

在MsFlexGrid控件单元格中插入背景图形

Set

MsFlexGridCellPicture=LoadPicture(“C:\temp\1bmp”)

>>选中某个单元

MsFlexGridRow=1

MsFlexGridCol=1

>>用粗体格式化当前选中单元

MsFlexGridCellFontBold=True

>>

添加新的一行

使用AddItem方法,用Tab字符分开不同单元格的内容

dim

row

as

string

row=”AAA”&vbtab&”bbb”

MsFlexFrid1addItem

row

>>怎样来实现MSFlexGrid控件单数行背景为白色,双数的行背景为蓝色

Dim

i

As

Integer

With

MSFlexGrid1

AllowBigSelection

=

True

设置网格样式

FillStyle

=

flexFillRepeat

For

i

=

0

To

Rows

-

1

Row

=

i:

Col

=

FixedCols

ColSel

=

Cols()

-

FixedCols

-

1

If

i

Mod

2

=

0

Then

CellBackColor

=

&HC0C0C0

浅灰

Else

CellBackColor

=

vbBlue

兰色

End

If

Next

i

End

With

>>

MSFlexGrid控件如何移到最后一行

MSFlexGrid1TopRow

=

MSFlexGrid1Rows

1

>>如何判断msflexgrid有无滚动条

Declare

Function

GetScrollRange

Lib

"user32"

(ByVal

hWnd

As

Long,

ByVal

nBar

As

Long,

lpMinPos

As

Long,

lpMaxPos

As

Long)

As

Long

Public

Const

SB_HORZ

=

&H0

Public

Const

SB_VERT

=

&H1

Public

Function

VsScroll(MshGrid

As

MSHFlexGrid)

As

Boolean

’判断水平滚动条的可见性

Dim

i

As

Long

VsScroll

=

False

i

=

GetScrollRange(MshGridhWnd,

SB_HORZ,

lpMinPos,

lpMaxPos)

If

lpMaxPos

<>

lpMinPos

Then

VsScroll

=

True

End

Function

Public

Function

HeScroll(MshGrid

As

MSHFlexGrid)

As

Boolean

’判断垂直滚动条的可见性

Dim

i

As

Long

HeScroll

=

False

i

=

GetScrollRange(MshGridhWnd,

SB_VERT,

lpMinPos,

lpMaxPos)

If

lpMaxPos

<>

lpMinPos

Then

HeScroll

=

True

End

Function

>>程序运行时,想动态增加MSFlexgrid的列数

在第2列后插入一列:

Private

Sub

Form_Load()

MeMSHFlexGrid1Cols

=

5

MSHFlexGrid1Rows

=

2

For

i

=

0

To

MeMSHFlexGrid1Cols

-

1

MeMSHFlexGrid1TextMatrix(0,

i)

=

i

MeMSHFlexGrid1TextMatrix(1,

i)

=

i

Next

End

Sub

Private

Sub

Command1_Click()

MeMSHFlexGrid1Cols

=

MeMSHFlexGrid1Cols

+

1

MeMSHFlexGrid1ColPosition(5)

=

3

End

Sub

>>

请教MSFlexGrid中的对齐功能的使用

设置MSFlexGrid1ColAlignment(index)=n

>>得到MSFlexGrid控件中当前选中的一行

msflexgrid1rowsel就是当前选中行

>>

如何通过代码调节列宽度

msflexgrid1colwidth(i)=4000

msflexgrid我用的不多,但是据我所知,控件本身没有分页的功能,要分页必须用程序代码实现。

给你一个思路:

1、首先知道数据的总记录;

2、设置每页的显示记录数;

3、根据记录数计算总页数,程序开始时显示第一页的记录;

4、设置“上一页”、“下一页”的按钮;

5、在上一页按钮事件中,现在显示的页数-1;

6、在下一页按钮事件中,现在显示的页数+1;

7、根据现在页数显示记录。

选中行可以,选中某一单元格似乎不行

你可以把这行的内容赋值给变量或者是控件!

实现代码是:

通过sql语句加载到 mshflex控件表格内

单击表格行

dim str as string

for i =0 to 9 ‘你表格有10列

str= MSHFlexGrid1TextMatrix(MSHFlexGrid1Row, i)'TextMatrix方法

text1=str

next i

如果是需要获取未知行或列可以写嵌套for循环。。

纯手写,希望能帮到你,不懂追问!

Private Sub Form_Load()

MSFlexGrid1Cols = 5

MSFlexGrid1Rows = 5

For i = 1 To 24

MSFlexGrid1TextArray(i) = i

Next

End Sub

Private Sub MSFlexGrid1_Click()

MSFlexGrid1Col = 0

MSFlexGrid1ColSel = MSFlexGrid1Cols - 1

For i = 1 To MSFlexGrid1Cols - 1

DebugPrint MSFlexGrid1TextMatrix(MSFlexGrid1RowSel, i); " ";

Next

DebugPrint

'如果未整行选中则用以下这句

'DebugPrint MSFlexGrid1TextMatrix(MSFlexGrid1RowSel, MSFlexGrid1ColSel)

End Sub

MSFlexGrid1SelectionMode = flexSelectionFree

可以实现在MSFlexGrid1中选择多行和多列。

另外,MSFlexGrid1AllowBigSelection = True 指定了可以通过单击行/列头来选中该行/列的所有列/行。

可以在MSFlexGrid1_SelChange事件中编写代码,返回当前选择的值。

以上就是关于VB6.0中MSFlexGrid控件的用法全部的内容,包括:VB6.0中MSFlexGrid控件的用法、vb msflexgrid行号、vb如何判断MFsFlexgrid控件选中了哪行,并把这一行的数据赋值给相应变量等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10077189.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存