0
我正在实现对windows应用程序的拖放按钮。在拖动时,我想显示一些拖动效果。我认为按钮的图像适合在拖动过程中显示。要拖动时要显示的图像
另外我觉得光标应该在拖动时更改。
我的疑惑是: 如何捕捉按钮的图像和拖动时显示。 在拖动过程中应该显示哪种类型的光标。
应用程序是在C++,win32中。
我正在实现对windows应用程序的拖放按钮。在拖动时,我想显示一些拖动效果。我认为按钮的图像适合在拖动过程中显示。要拖动时要显示的图像
另外我觉得光标应该在拖动时更改。
我的疑惑是: 如何捕捉按钮的图像和拖动时显示。 在拖动过程中应该显示哪种类型的光标。
应用程序是在C++,win32中。
拖动图像:
如果它是一个标准的按钮控件,那么你应该能够使用WM_PRINT或WM_PRINTCLIENT问它自己绘制到GDI HDC(即成位图,你再使用作为拖动图像)。
请注意,并非所有控件都支持这些消息,其中一些控件支持它们的方式稍有不同。有时你必须尝试一下或者为不同的控件设置自定义的代码路径。
另一种方法是使用视觉样式(主题)API自己绘制按钮,在禁用主题时使用DrawFrameControl。但是如果你不需要它,比使用WM_PRINT/WM_PRINTCLIENT更乏味。
光标:
要看是何种操作是干什么的,真的。请注意,如果需要,您可以使用shell拖动对象免费获取副本并移动光标。不过,有时使用自定义光标是有意义的。