网站建设资讯

NEWS

网站建设资讯

vb.net窗体最前端 vbnet main启动窗体

在VB中怎样使一个窗体始终保护在最前

让窗体总是在前

在铁岭等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供网站制作、成都网站制作 网站设计制作按需规划网站,公司网站建设,企业网站建设,高端网站设计,成都全网营销,外贸网站建设,铁岭网站建设费用合理。

可使用Win API SETWINDOWPOS可达到这一目的

该函数的语法是:

SetWindowPos hWnd, hwndInsetAfter, x, y, cx, xy, wFlags

其中:

hWnd ---- 窗体的句柄(handle)。

hWndInsetAfter ---- 它就是决定是否“总在前”的参数,

应用中设置为: HWND_TOPMOST 总在前

HWND_NOTOPMOST 正常的

x,y,cx,cy ----表示窗体的位置和大小的参数,在实际应用中可忽略。

wFlags ---- 决定窗体是否可以移动和改变尺寸,

一般设置成这样的形式: SWP_NOMOVE or SWP_NOSIZE。

将 CTRL + ALT + DEL 功能键之功能取消,然后在结束程序之前,再从新恢复 CTRL + ALT + DEL 之功能

在模组声明区中加入以下声明及模组:

Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, lpvParam As Any, ByVal fuWinIni As Long) As Long

Public Const SPI_SCREENSAVERRUNNING = 97

Public Sub Disable_Ctrl_Alt_Del()

’让 CTRL+ALT+DEL 失效

Dim AyW As Integer

Dim TurFls As Boolean

AwY = SystemParametersInfo(SPI_SCREENSAVERRUNNING, True, TurFls, 0)

End Sub

Public Sub Enable_Ctrl_Alt_Del()

’让 CTRL+ALT+DEL 恢复功能

Dim AwY As Integer

Dim TurFls As Boolean

AwY = SystemParametersInfo(SPI_SCREENSAVERRUNNING, False, TurFls, 0)

End Sub

’实际使用时,在 Form 中加入以下程序码:

Private Sub Form_Load()

Disable_Ctrl_Alt_Del

End Sub

Private Sub Form_Unload(Cancel As Integer)

Enable_Ctrl_Alt_Del

End Sub

VB.NET如何让弹出的窗体显示在所有的窗体的最前面(包括其他程序打开的窗体)

你可以这样做,设置窗体的TopMost 属性为真!

Me.TopMost = True

Form.TopMost 属性

获取或设置一个值,指示该窗体是否应显示为最顶层窗体。

vb的窗体怎么显示在最前端?

在某些情况下我们需要某个窗体总是在所有窗体的最前端,我们可以使用Form1.show

1来实现,但是这样会出现一个问题,就是使整个程序暂停运行,直到Unload

Form1后程序才会继续运行.

那么如何使我的窗口总在最前?而不影响到我的整体程序运行呢?

使用api函数

SetWindowPos

可以很容易的作到。

SetWindowPos

就是完成设置窗口位置和状态(pos=position)的功能。源代码如下:

Option

Explicit

Private

Declare

Function

SetWindowPos

Lib

"user32"

(ByVal

hwnd

As

Long,

ByVal

hWndInsertAfter

As

Long,

ByVal

x

As

Long,

ByVal

y

As

Long,

ByVal

cx

As

Long,

ByVal

cy

As

Long,

ByVal

wFlags

As

Long)

As

Long

Private

Const

HWND_TOPMOST

=

-1

'

将窗口置于列表顶部,并位于任何最顶部窗口的前面

Private

Const

SWP_NOSIZE

=

H1

'

保持窗口大小

Private

Const

SWP_NOMOVE

=

H2

'

保持窗口位置

Private

Sub

Form_Load()

SetWindowPos

Me.hwnd,

HWND_TOPMOST,

0,

0,

0,

0,

SWP_NOMOVE

Or

SWP_NOSIZE

'

将窗口设为在所有窗口前端

End

Sub

在VB中如何让窗体总在最前端显示(要求在任务管理器之前)

楼上的不行

我可以永远让窗体居前,运行

资源管理器

时不会被遮掩

添加一个Timer控件,将Interval属性设为100

Public

Declare

Function

SetWindowPos

Lib

"user32"

(ByVal

hwnd

As

Long,

ByVal

hWndInsertAfter

As

Long,

ByVal

x

As

Long,

ByVal

y

As

Long,

ByVal

cx

As

Long,

ByVal

cy

As

Long,

ByVal

wFlags

As

Long)

As

Long

Private

Sub

Timer1_Timer()

SetWindowPos

Me.hWnd,

HWND_TOPMOST,

0,

0,

0,

0,

O1

+

O2

End

Sub

VB.net如何设置程序运行时最先打开的窗体?

你是不是用的Visual Studio来开发的?如果是,这样操作:打开 项目 菜单 中的 XXX属性,在弹出的属性页选择最上面那个 应用程序 标签,里面有个启动窗体,你选择一下就可以了。

如果你不是用的visual Studio来开发的,那么可以考虑把另外一个窗口的visible属性先设置为false或者把你要显示的窗口改为对话框的形式,大小比另外一个窗口大一点或者一样(即 模态窗口,必须关闭才能继续操作),这样都可以实现你要的效果。


本文名称:vb.net窗体最前端 vbnet main启动窗体
转载来源:http://njwzjz.com/article/dodecii.html