我正在为 POS 编写应用程序并将 POS 用于 .NET。我发现,当我调用 WaitForDrawerClose 方法时,虽然应用程序会坐下来无响应地等待直到抽屉关闭(根据需要),但其他地方的任何点击似乎都会堆积在队列中,并且一旦抽屉关闭就会全部触发。只要 WaitForDrawerClose 尚未返回,如何让我的应用程序停止侦听这些事件?谢谢!
问问题
561 次
1 回答
4
您可以完全避免调用 WaitForDrawerClose,并自己处理逻辑。
只需侦听OnDrawerStateChanged事件即可告知抽屉何时关闭。而不是在那个时候同步阻塞(这会导致你的问题),这会让你退出你的例程,更新你的 UI(禁用按钮以防止事件触发等),然后在抽屉关闭时重新启用一切.
这需要更多的努力,因为它比单行方法工作更多,但是如果用户不做他们应该做的事情,它可以让您更好地控制您的应用程序将如何反应。你甚至可以让 nag 屏幕告诉用户(在一定的延迟之后)他们需要关闭抽屉,比标准的哔哔声做更多的事情,等等。
于 2009-08-21T20:20:47.730 回答