2008-10-03 29 views
0

我有一个windows mobile 5.0应用程序,用C++ MFC编写,有很多对话框。我目前使用的其中一个设备没有Tab键,所以我想使用另一个键在控件之间移动。这对于按钮来说很好,但不能编辑控件或组合框。我曾看过similar question,但答案并不适合。我尝试覆盖CDialog :: OnKeyDown无济于事,并且不必为每个对话框中的每个控件都重写按键功能。到目前为止,我的想法是编写替代CEdit和CComboBox的新类,但一如既往只是检查是否有更简单的方法,例如暂时重新编程另一个键。在不带Tab键的Windows Mobile中的对话框控件之间移动

回答

1

我不知道MFC 很好,但也许你可以通过将所有这些控件的窗口过程用一个类进行子类化来实现它,它只处理按下光标键并传递其余事件到原来的程序。

根据哪个光标键被按下,您将不得不提供自己的移动到适当控件的机制,但它可能值得可用性收益。

如果有效,您可以枚举所有对话框控件并自动对它们进行子类化。

的Windows Mobile 6可以使用光标默认对话框控件之间切换 - 这是一个新的,更“smartphoney”周围的UI移动的方式,它是令人难以置信的方便。

+0

得到了子类工作正常,非常感谢。我还没有想出如何自动对所有类似的控件进行子类化,但这将是另一个问题。 – 2008-10-15 11:09:43

-1

你不能使用D-Pad在字段之间导航吗?