vb.net窗口置頂 vb窗口布局

VB.NET如何讓彈出的窗體顯示在所有的窗體的最前面(包括其他程序打開的窗體)

你可以這樣做,設置窗體的TopMost 屬性為真!

在梁山等地區(qū),都構建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供網站建設、成都網站建設 網站設計制作定制網站制作,公司網站建設,企業(yè)網站建設,品牌網站設計,全網整合營銷推廣,外貿網站制作,梁山網站建設費用合理。

Me.TopMost = True

Form.TopMost 屬性

獲取或設置一個值,指示該窗體是否應顯示為最頂層窗體。

急:vb.net設計的軟件中,如何讓主窗口置頂?

用SetWindowPos,參數(shù)TOP_MOST

就是直接設置窗口的TOPMOST屬性也行啊,把默認的false改成true,自己在窗口的屬性列表里找找吧

VB 窗口置頂

你說的是保持在最前面吧!你再說明白點!

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)

Private Sub Form_Load()

Call SetWindowPos(Me.hwnd, -1, 0, 0, 0, 0, 3)

'其它代碼

End Sub

將下面的代碼復制到記事本中,并將其保持為Form1.frm

VERSION 5.00

Begin VB.Form Form1

BorderStyle = 0 'None

ClientHeight = 4695

ClientLeft = 0

ClientTop = 0

ClientWidth = 6975

LinkTopic = "Form1"

ScaleHeight = 4695

ScaleWidth = 6975

ShowInTaskbar = 0 'False

StartUpPosition = 3 '窗口缺省

Begin VB.Shape Shape3

BackColor = H000080FF

BackStyle = 1 'Opaque

BorderStyle = 0 'Transparent

Height = 855

Left = 3480

Shape = 3 'Circle

Top = 960

Width = 975

End

Begin VB.Shape Shape2

BackColor = H000080FF

BackStyle = 1 'Opaque

BorderStyle = 0 'Transparent

Height = 855

Left = 1560

Shape = 3 'Circle

Top = 960

Width = 975

End

Begin VB.Shape Shape1

BackColor = H000080FF

BackStyle = 1 'Opaque

BorderStyle = 0 'Transparent

Height = 1095

Left = 1920

Shape = 2 'Oval

Top = 1320

Width = 2055

End

End

Attribute VB_Name = "Form1"

Attribute VB_GlobalNameSpace = False

Attribute VB_Creatable = False

Attribute VB_PredeclaredId = True

Attribute VB_Exposed = False

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)

Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long

Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

Private Declare Function SetLayeredWindowAttributes Lib "user32" (ByVal hwnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long

Dim mouse_x As Single

Dim mouse_y As Single

Private Sub Form_Load()

Call SetWindowPos(Me.hwnd, -1, 0, 0, 0, 0, 3)

Me.BackColor = HFF0000

Dim rtn As Long

BorderStyler = 0

rtn = GetWindowLong(hwnd, -20)

rtn = rtn Or H80000

SetWindowLong hwnd, -20, rtn

SetLayeredWindowAttributes hwnd, HFF0000, 0, H1

End Sub

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

mouse_x = 0

mouse_y = 0

If Button = 1 Then

mouse_x = X

mouse_y = Y

End If

End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Button = 1 Then

Form1.Left = Form1.Left + (X - mouse_x)

Form1.Top = Form1.Top + (Y - mouse_y)

End If

End Sub

VB.NET窗口置頂在最前面顯示的時候不影響目前鼠標焦點.

這是一個關于模態(tài)窗口與非模態(tài)窗口的問題。

實現(xiàn)非模態(tài)窗口也沒什么難度

Dim form As New Form1

form.TopMost = True

form.Show()

你再將鼠標移到父窗口上,彈出的窗口也不會消失。

網頁標題:vb.net窗口置頂 vb窗口布局
文章分享:http://muchs.cn/article40/ddccjho.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供響應式網站用戶體驗、網站收錄、做網站、虛擬主機、網站維護

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

網站優(yōu)化排名