以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 单元格中如何识别键盘按键 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=88090) |
-- 作者:天若千颖 -- 发布时间:2016/7/26 22:29:00 -- 单元格中如何识别键盘按键 红袍老师,在单元格中,首先判断是特定的这一列: If e.Col.Name = "文件名称及链接" Then 如果双击就直接打开文件,打开文件的代码已经有了,直接放在表属性的DoubleClick里面, 但是,如果按住键盘的Ctrl键双击的话,就另存为文件,如何在单元格中判断键盘上按下的是Ctrl键呢? e.Control = True 在双击的事件里不能用啊。 |
-- 作者:天若千颖 -- 发布时间:2016/7/26 22:32:00 -- 这是白天用的在 KeyDown中这么设置,按键盘任意键就另存,但是发现用的时候很不方便,所以,不能放在KeyDown里面,或者KeyDown里面要识别键盘是按得Ctrl键才执行下面的代码,不然的话,好像鼠标右键也会执行。
If e.Table.Current Is Nothing Then Return
Dim c As Col = e.Table.Cols(e.Table.ColSel) If c.name = "文件名称及链接" Then Dim dlg As new SaveFileDialog dlg.FileName = FileSys.GetName(e.Table.Current(c.Name)) If dlg.ShowDialog = DialogResult.OK Then e.cancel = True Dim ftp As FTPClient = c.DataCol.FTPClient Dim path As String = ProjectPath & "RemoteFiles\\" & FileSys.GetName(e.Table.Current(c.Name)) ftp.Download(e.Table.Current(c.Name), path, True) FileSys.CopyFile(path, dlg.FileName, True) msgbox("另存成功") End If End If [此贴子已经被作者于2016/7/26 22:34:33编辑过]
|
-- 作者:天若千颖 -- 发布时间:2016/7/26 22:38:00 -- Dim c As Col = e.Table.Cols(e.Table.ColSel) If c.name = "文件名称及链接" Then If e.Control = True AndAlso e.Table.Current IsNot Nothing Then MessageBox.show("12") End If End If 这样搞定了。 |