如何定位datagrid显示的数据而后进行打印
数据显示在DATAGRID中,如果添加一个右键打印菜单,提取出当前光标所在行的记录。
[解决办法]
在窗口中,创建一个菜单,给个命名比如mnuX,并设置为隐藏,在其下,创建一个子菜单mnuPrint
mnuPrint_Click事件中,添加打印当前记录,可以使用下面代码获得当前记录
dim rs as adodb.recordset
set rs=datagrid1.datasource 'rs既可访问当前记录
.........
在datagrid1 的 MouseDown事件中
sub datagrid1_MouseDown(.........)
if button=2 then
popupmenu mnuX 'mnuX 前述要你创建的那个隐藏菜单
end if
end sub
[解决办法]
我觉得这个用MSHFlexGrid更好,因为DataGrid貌似无法锁定单击的行。也就无法实现你的打印鼠标所在行的要求。
Option ExplicitPrivate Sub Form_Load() With MSHFlexGrid1 .Rows = 10 .Cols = 5 End WithEnd SubPrivate Sub MSHFlexGrid1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single) Me.Caption = MSHFlexGrid1.Row & " " & MSHFlexGrid1.Col End Sub
[解决办法]
常用VSFLEXGRID的飘赤