MSFlexGrid1 如果要选择MSFlexGrid1中的多条记录,
最后获取的多个ID在做为一个记录 (如选择了第1条的0001、第3条的0003、第8条的0008)
怎样把“0001、0003、0008”作为另一张表某个字段的值1.例如 按住CTRL ,通过鼠标点击 这样多选 获取数据集ID呢 要怎样实现,
2.添加一个Textbox 通过双击MSFlexGrid1的记录 移到 Textbox
希望大家会明白我的意思!
最后获取的多个ID在做为一个记录 (如选择了第1条的0001、第3条的0003、第8条的0008)
怎样把“0001、0003、0008”作为另一张表某个字段的值1.例如 按住CTRL ,通过鼠标点击 这样多选 获取数据集ID呢 要怎样实现,
2.添加一个Textbox 通过双击MSFlexGrid1的记录 移到 Textbox
希望大家会明白我的意思!
解决方案 »
- 有没办法判断文本框中输入的用户名是不是 汉字字符?
- 有请"超级绿豆"讲解一下《实用代码:简单的分隔条类》的思路!
- 简单问题
- 关于加密的问题
- 数据库中Varchar与char有什么区别
- mailto: 能否实现附件功能,怎么做呢?
- 为什么我的这种把图片写入数据库的方式有错?
- 我调用medioplayer播放文件,怎样使他自动调整大小,另外.mmcontrol中怎么使它保持显示比例,给点建议吧,各位
- Private Sub Winsock_ConnectionRequest(ByVal requestID As Long)的问题
- 请教各位大侠:API函数声明,事关紧急,积分全部相送!
- VB下USB编程
- 200分:高难,神秘莫测的NewWindow2!
Private Sub MSFlexGrid1_Click()
With MSFlexGrid1
If .MouseCol = 1 And .Col = 1 Then
.RowData(.MouseRow) = Not .RowData(.MouseRow)
If .RowData(.MouseRow) Then
Set .CellPicture = Picture1.Picture
Else
Set .CellPicture = Nothing
End If
End If
End With
End SubPicture1里面放了一个小对号图片
这段代码考虑的情况很简单,实际使用可能还有漏洞,仅供参考:)
保存的时候循环检查一下,凡是RowData属性为true的行都保存
你的方法我试试,但不知道会不会,有没有办法在每条记录一列的单元格里面添加个单选框,还是有其他方法!
==================================================
可以建立一个单选框数组,然后根据需要load新的单选框,然后把每个单选框定位到相应的行列位置。但是如果网格行数很多,滚动网格的时候想让这么多单选框始终能够正确地显示就很麻烦了。
我倾向于用.CellPicture属性,你可以准备两个小图片,分别是单选框选中和为选中的样子,然后根据情况把这两个图片贴到网格里面。用户不太可能看出破绽。这个方法的好处是不用操心网格滚动时正确显示单选框。“单选框”??
单选按钮/复选框??
Dim i As Long
With MSFlexGrid1
.Rows = 10000
.RowHeight(-1) = 280
.ColAlignment(0) = flexAlignCenterCenter
For i = 1 To .Rows - 1
.TextMatrix(i, 0) = CStr(i)
Next
.ColWidth(1) = 800
.FillStyle = flexFillRepeat
.Col = 1
.RowSel = 1
.RowSel = .Rows - 1
.CellPictureAlignment = flexAlignCenterCenter
Set .CellPicture = Picture2.Picture
.RowSel = 1
.FillStyle = flexFillSingle
End With
End Sub
Private Sub MSFlexGrid1_Click()
With MSFlexGrid1
If .MouseCol = 1 And .Col = 1 Then
.RowData(.MouseRow) = Not .RowData(.MouseRow)
If .RowData(.MouseRow) Then
Set .CellPicture = Picture1.Picture
Else
Set .CellPicture = Picture2.Picture
End If
End If
End With
End Sub
http://www.egooglet.com/static_html/200511092142552141admin.html与CheckBox控件结合与之类似。
http://www.egooglet.com 资料、源码下载http://bbs.j2soft.cn 论坛交流
═══════════════════
但是如何判断这图片这列的图片时是 picture1 还是 picture2不好意思,我真的不懂!
语句怎么写,
if MSFlexGrid1.CellPicture= ???
=============================
用.RowData属性判断
if .RowData(行) then
是picture1
else
是picture2
endif
再根据这几行来取其他属性~!
With MSFlexGrid1
If .MouseCol = 1 And .Col = 1 Then
.RowData(.MouseRow) = Not .RowData(.MouseRow)
If .RowData(.MouseRow) Then
Set .CellPicture = Picture1.Picture
.Text = ''
Else
Set .CellPicture = Picture2.Picture
.Text = .TextMatrix(Grid1.Row, 0) '我是把第一列的值赋值给该类最后判断该列值是不是为空的。 所以想知道如何判断是Pic1 还是 Pic2 End If
End If
End With
End Sub
如果该行CellPicture是picture1,那么该行的rowdata属性就是非0值
反之如果该行CellPicture是picture2,那么该行的rowdata属性就是0
所以可以通过RowData属性来判断CellPicture是哪个图片我猜直接if (.CellPicture=picture1.picture) then 也应该可以,没试验