Jeff_M 发表于 2016-4-23 11:58:45

Windows光标问题

我有一个上下文菜单,其中有一个项目调用一个调用ed.GetSelection()的方法。一切都很好,除了光标仍然是windows光标,而不是切换到拾取框,从而使选择对象变得困难。我添加了对Autodesk.AutoCAD.Internal.Utils.SetFocusToDwgView()的调用;这没有帮助。这里有一个快速的屏幕截图显示了这个问题:http://autode.sk/1XOs9GE
关于如何强制光标自动切换到选择拾取框的任何想法?一旦用户错过了选择,它就会转到正常的窗口/交叉选择,之后光标就会正常。但我希望它从一开始就是正确的。
**** Hidden Message *****

gile 发表于 2016-4-24 04:56:06

嗨,
您是否尝试过将调用的方法包装在CommandMethod中,并使用SenStringToExecute调用它?

Jeff_M 发表于 2016-4-24 11:44:51

嗨,吉尔,不,我没有尝试过,所以只是做了,并得到了相同的结果。它确实具有用户能够按Enter或空格键重复命令的好处,因此我将像这样离开。谢谢!

huiz 发表于 2016-4-24 13:55:56

你有一个小例子吗?我有一个上下文菜单,没有任何鼠标光标问题,所以我可以比较它。

Jeff_M 发表于 2016-4-24 14:27:06

后面我尽量举个小例子。虽然我刚刚在C3D2017中做了一些测试,光标如预期的那样发生了变化。所以决定检查C3D2015,它在那里也工作正常。所以可能只是2016年的问题,甚至是SP2特有的问题?基于这一点,我不认为我会担心它,因为它似乎不是我的代码造成的。
谢谢大家的关注!。

Chumplybum 发表于 2016-4-25 19:10:57

试试编辑器。StartUserInteraction,我自己从来没有用过,但是几年前有一篇关于它的博客文章...http://adndevblog . typepad . com/AutoCAD/2012/05/taking-mouse-inputs-from-a-modal-dialog-box . html

Jeff_M 发表于 2016-4-25 19:39:58

谢谢你的建议,这听起来很有希望。但是,它需要一个作为参数传递的模态形式,因此我认为它不适用于上下文菜单。我确实试图让它工作,但再多的诡计也无法让它将菜单识别为一种形式。

Chumplybum 发表于 2016-4-25 19:53:09

另一种选择是在鼠标单击时将焦点设置为autocad...我在向功能区文本框中输入值时使用了下面的代码,但可以针对鼠标单击事件进行修改。
   
    Private Shared Function SetFocus(ByVal hwnd As IntPtr) As IntPtr
    End Function
    Private Sub callback_PropertyChanged(sender As Object, e As System.ComponentModel.PropertyChangedEventArgs)
      SetFocus(Autodesk.AutoCAD.ApplicationServices.Application.MainWindow.Handle)
    End Sub

MexicanCustard 发表于 2016-4-26 07:27:11

在黑暗中拍摄,Autodesk.AutoCAD.Internal.Utils.PostCommandPrompt();

BillZndl 发表于 2016-4-26 12:56:23


是的,
你打败了我...
页: [1] 2
查看完整版本: Windows光标问题