很簡單,通過WindowsAPI,刪除窗體菜單項(xiàng)就行了

創(chuàng)新互聯(lián)基于分布式IDC數(shù)據(jù)中心構(gòu)建的平臺為眾多戶提供西部信息中心 四川大帶寬租用 成都機(jī)柜租用 成都服務(wù)器租用。
首先在窗體類中聲明API:
Declare Function GetSystemMenu Lib "user32" (ByVal hWnd As IntPtr, ByVal bRevert As Boolean) As IntPtr
Declare Function RemoveMenu Lib "user32" (ByVal lngHmenu As IntPtr, ByVal nPosition As Integer, ByVal wFlags As Integer) As Integer
其次聲明API參數(shù)常量:
Const MF_BYPOSITION As Integer = H400
然后在窗體類中寫入過程:
Private Sub UserForm_Initialize_stopmove() '禁止窗體移動
? Dim lngHwnd As IntPtr
? Dim lngHmenu As IntPtr
? lngHwnd = Me.Handle
? If lngHwnd 0 Then
? ? ? lngHmenu = GetSystemMenu(lngHwnd, False)
? ? ? RemoveMenu(lngHmenu, 0, MF_BYPOSITION) '這里的0代表菜單中從上往下數(shù)第一個菜單項(xiàng)
? End If
End Sub
Private Sub UserForm_Initialize_onmove() '恢復(fù)窗體移動
? Dim lngHwnd As IntPtr
? Dim lngHmenu As IntPtr
? lngHwnd = Me.Handle
? If lngHwnd 0 Then
? ? ? lngHmenu = GetSystemMenu(lngHwnd, True)
RemoveMenu(lngHmenu, 0, MF_BYPOSITION) '這里的0與禁止代碼中的數(shù)值同步,原因時雖然表面上刪除了菜單項(xiàng),實(shí)則為隱藏了菜單項(xiàng),各個菜單的索引值并沒有變,所以0依然代表初始菜單的第一個菜單項(xiàng),即被刪除的那個菜單項(xiàng)
? End If
End Sub
然后如果你的窗口菜單是動態(tài)變化的,建議聲明常數(shù):
Const MF_BYPOSITION As Integer = H0
然后使用相關(guān)的Windows功能的常數(shù)進(jìn)行刪除菜單。常數(shù)需要自行查看winuser.h頭文件
如果找不到該頭文件,可以看這里:網(wǎng)頁鏈接
其余信息詳見MSDN:網(wǎng)頁鏈接
最后說一下,不建議前面網(wǎng)友說的重寫WndProc的方法,因?yàn)檫@樣攔截標(biāo)題欄點(diǎn)擊消息會導(dǎo)致窗體本身的菜單也無法顯示出來,有損窗體功能,并且像雙擊左上角圖標(biāo)關(guān)閉窗體這樣的功能也會跟著攔截消息的操作一起被吞掉。
系統(tǒng)bug,網(wǎng)絡(luò)問題。
1、系統(tǒng)bug是vb點(diǎn)虐 外接軟件系統(tǒng)出現(xiàn)了問題導(dǎo)致程序不顯示菜單,等待官方修復(fù)即可。
2、網(wǎng)絡(luò)問題是自身設(shè)備連接的網(wǎng)絡(luò)出現(xiàn)較大波動,導(dǎo)致vb點(diǎn)虐 外接程序不顯示菜單,更換網(wǎng)絡(luò)重新打開即可。
把按鈕的Enable屬性改為False。
用代碼:按鈕名.Enable=False。
用API:EnableWindow。
1、VB是一種可視化的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,Enabled是VB中控件的一種屬性。
2、Enabled屬性有兩種值True和False,分別代表真和假。當(dāng)一個控件的Enabled屬性值為真時代表該控件可以用,當(dāng)控件的Enabled屬性為False時代表該控件不可用(圖形會變度為灰色且不可以選中)。
擴(kuò)展資料
vb點(diǎn)虐 ?特性:
1、vb點(diǎn)虐 完全集成到 Visual Studio 集成開發(fā)環(huán)境中,在這種集成開發(fā)環(huán)境與 VB 在若干方面有差異。主要體現(xiàn)在窗體的布局以及菜單等方面都有所不同。
2、vb點(diǎn)虐 項(xiàng)目與 VB 不同。它使用基于文件夾的模型,所有項(xiàng)目均放置在項(xiàng)目文件夾層次結(jié)構(gòu)中。
3、vb點(diǎn)虐 中使用ado點(diǎn)虐 來訪問數(shù)據(jù)庫,ado點(diǎn)虐 是點(diǎn)虐 Framework的一部分。在 vb點(diǎn)虐 中實(shí)現(xiàn)數(shù)據(jù)訪問的方法主要有兩種。
當(dāng)前文章:vb點(diǎn)虐
菜單禁止 vbs禁用cmd
本文鏈接:http://chinadenli.net/article12/ddgsigc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設(shè)、網(wǎng)站排名、動態(tài)網(wǎng)站、靜態(tài)網(wǎng)站、營銷型網(wǎng)站建設(shè)、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)