我正在为Windowsce 5.0设备(PSION Teklogix Workabout Pro G2)编写C#程序。
任务栏设置为自动隐藏。 我无法完全禁用它,因为用户有时需要访问开始菜单或者可能想要手动显示或隐藏SIP。它不应该一直显示,因为我想尽可能多地使用小显示器。
我的问题是:当屏幕底部的任务栏最小化并且用户点击其上的某个位置(而不是startmenu按钮)时,它将滑入并正确显示。 但是如果用户没有激活startmenu(通过点击windows-Logo),任务栏将不会再次滑出,除非startmenu被打开一次。
是否有类似事件的东西,我可以发送到任务栏,所以它再次隐藏,而用户没有开始访问startmenu?
答案 0 :(得分:0)
我过去这样做的方式假设你的意思是vanilla ce(标准shell)就是抓住HHTaskBar的句柄并简单地隐藏它;)
我也禁用了SipWndClass(以防键盘处于打开状态)。
其中iEnabled = true(输入全屏)或false显示HHTaskBar: -
HWND hWndToHide = FindWindow(_T("HHTaskBar"), NULL);
if(hWndToHide) {
if(iEnabled) {
// Disable VanillaCE TaskBar
if(IsWindowVisible(hWndToHide))
ShowWindow(hWndToHide, SW_HIDE);
// Disable SIPWnd (On Screen Keyboard).
hWndToHide = FindWindow(_T("SipWndClass"), NULL);
if(hWndToHide && IsWindowVisible(hWndToHide))
ShowWindow(hWndToHide, SW_HIDE);
}
else {
// Enable VanillaCE TaskBar
if(!IsWindowVisible(hWndToHide))
ShowWindow(hWndToHide, SW_SHOW);
}
}
将其转换为.NET应该不会太难;)