Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 如何隐藏Windows CE任务栏并全屏显示程序窗口?_Vb.net_Compact Framework_Windows Ce - Fatal编程技术网

Vb.net 如何隐藏Windows CE任务栏并全屏显示程序窗口?

Vb.net 如何隐藏Windows CE任务栏并全屏显示程序窗口?,vb.net,compact-framework,windows-ce,Vb.net,Compact Framework,Windows Ce,我正在Windows CE移动设备上使用VB.Net。我试图在“全屏”(即覆盖整个屏幕,甚至任务栏顶部)显示我的表单,同时不允许移动/拖动表单。到目前为止,我只实现了以下两个目标之一: 使窗体全屏显示,但用户可以拖动它。我只需将表单的高度和宽度设置为屏幕的高度和宽度即可 禁用拖动(通过将WindowsState设置为“最大化”),但任务栏可见并已启用 禁用拖动(再次使用Maximized),隐藏任务栏(通过从coredll中使用ShowWindow),但窗口在底部被切断——任务栏应该在的区域,

我正在Windows CE移动设备上使用VB.Net。我试图在“全屏”(即覆盖整个屏幕,甚至任务栏顶部)显示我的表单,同时不允许移动/拖动表单。到目前为止,我只实现了以下两个目标之一:

  • 使窗体全屏显示,但用户可以拖动它。我只需将表单的高度和宽度设置为屏幕的高度和宽度即可

  • 禁用拖动(通过将WindowsState设置为“最大化”),但任务栏可见并已启用

  • 禁用拖动(再次使用Maximized),隐藏任务栏(通过从coredll中使用ShowWindow),但窗口在底部被切断——任务栏应该在的区域,在那里它现在显示一个空白区域,而不是我想要的表单的其余部分

我尝试过设置WindowPos,但任务栏仍然存在。代码如下:

' this code is from the main form's load event
CDevice.HideTaskBar(Me)
Me.AutoScroll = False
Me.WindowState = FormWindowState.Maximized
以下是HideTaskBar的定义(来自上面的代码):

Try:
SetWindowPos(taskhWin,0,0,0,0,0,SWP_HIDEWINDOW)

另请参见:

尽管WindowsCE(您有什么版本?)的行为有点不同,但请看这里: 虽然我是用C语言编写的,但你应该能够把它翻译成VB。请参见此处的代码:

  • 首先隐藏任务栏

  • 使用不带标题栏(无标题栏)的表单

  • 查询系统屏幕尺寸

  • 调整表单大小并移动表单以填充屏幕尺寸,或尝试使用表单。WindowsState=最大化


谢谢,但它不太管用。它隐藏了任务栏,但它仍然显示空白空间,而不允许我的程序窗口填满整个屏幕。您还需要使用
SHFullScreen()
。请参阅我链接到的文章。
Public Const SWP_NOSIZE As Int32 = &H1
Public Const SWP_NOMOVE As Int32 = &H2
Public Shared Sub HideTaskBar(ByRef obj As Form)
    Dim taskhWin = FindWindow("HHTaskBar", Nothing)
    SetWindowPos(taskhWin, New IntPtr(-1), 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE)
    SetWindowPos(obj.Handle, New IntPtr(1), 0, 0, 240, 320, 0)
End Sub