以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  点击表格的第一下,有问题,求助  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=81381)

--  作者:lovemaders
--  发布时间:2016/2/26 11:45:00
--  点击表格的第一下,有问题,求助

图片点击可在新窗口打开查看此主题相关图片如下:8uuo9qe~)l@k@i4b77hlav.png
图片点击可在新窗口打开查看

--  作者:大红袍
--  发布时间:2016/2/26 11:46:00
--  
没理解你什么意思,具体什么问题。
--  作者:lovemaders
--  发布时间:2016/2/26 11:49:00
--  
如图,窗口里的一个表格,如果之前鼠标位置在2的位置就是第一行的部门传真列上面,现在假如我把鼠标移动到这个表格以外的任意地方点击一下,比如1的地方点了一下,当我再次去点击表格的时候,比如我点了3的位置第一行第一列,这个是鼠标从其他地方移动到表格的点击的地一下,这个时候行是响应的但是列的标志却没变成黄色,再点击其他地方的时候就没问题了,问题就是出在从其他地方移动到表格的点击的地一下的时候的列,没及时响应,问题出在哪里呢?
--  作者:大红袍
--  发布时间:2016/2/26 11:51:00
--  

上传具体例子。


--  作者:大红袍
--  发布时间:2016/2/26 11:54:00
--  
如果你table放在TabControl里面,就可能有这种情况,第一次点击的时候,焦点在TabControl里的
--  作者:lovemaders
--  发布时间:2016/2/26 12:00:00
--  如果是这样有办法解决吗
如果是这样有办法解决吗
--  作者:大红袍
--  发布时间:2016/2/26 12:30:00
--  

变通一下,利用计划任务,模拟再点击一次鼠标

 

全局代码

 

Public Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Public const MOUSEEVENTF_MOVE As Int32 = &H1 \'  mouse move
Public const MOUSEEVENTF_LEFTDOWN As Int32 = &H2 \'  left button down
Public const MOUSEEVENTF_LEFTUP As Int32 = &H4 \'  left button up
Public const MOUSEEVENTF_RIGHTDOWN As Int32 = &H8 \'  right button down
Public const MOUSEEVENTF_RIGHTUP As Int32 = &H10 \'  right button up
Public const MOUSEEVENTF_MIDDLEDOWN As Int32 = &H20 \'  middle button down
Public const MOUSEEVENTF_MIDDLEUP As Int32 = &H40 \'  middle button up
Public const MOUSEEVENTF_ABSOLUTE As Int32 = &H8000 \'  absolute move
Public const MOUSEEVENTF_WHEEL As Int32 = &H800 \' wheel button rolled

 

click事件

 

MyTimers("计划1").Interval = 500
MyTimers("计划1").Enabled = True

 

计划1

 

MyTimers("计划1").Enabled = False

mouse_event( MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0) \'点击
mouse_event (MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)