【发布时间】:2022-11-10 01:52:21
【问题描述】:
我需要在我的 wxWidgets 程序中编写什么事件,以便我可以跟踪鼠标拖动。 我的意思是按住鼠标左键并在按下时跟踪移动。
【问题讨论】:
我需要在我的 wxWidgets 程序中编写什么事件,以便我可以跟踪鼠标拖动。 我的意思是按住鼠标左键并在按下时跟踪移动。
【问题讨论】:
也许令人惊讶的是,这不是一个简单的任务。您可以查看wxMouseEventsManager 的实现以查看执行此操作的工作代码示例,但要点是您需要在按下按钮时捕获鼠标,以便即使它退出窗口也能跟随它的移动,并且那么您还需要对wxEVT_MOUSE_CAPTURE_LOST 事件做出反应,以了解捕获何时被强制中断。
【讨论】:
Bind(wxEVT_MOTION, [&](wxMouseEvent& event) {
if (event.Dragging()) {
if (event.LeftIsDown()) {
// code
}
}
});
【讨论】:
event.Dragging 不区分左右按钮。