vb中如何将窗体右上角的关闭功能封闭掉

wubaiyong 2005-02-17 02:17:44
vb中如何将窗体右上角的关闭功能封闭掉
...全文
220 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wubaiyong 2005-02-17
  • 打赏
  • 举报
回复
我知道API可以,现在因为比较急,请各位大侠贴出代码
xiongchen 2005-02-17
  • 打赏
  • 举报
回复
需要借助API了,因为系统没有提供这样的类
以下是VB.NET的代码:

'API声明

Private Declare Function GetSystemMenu Lib "User32" (ByVal hwnd As Integer, ByVal bRevert As Long) As Integer

Private Declare Function RemoveMenu Lib "User32" (ByVal hMenu As Integer, ByVal nPosition As Integer, ByVal wFlags As Integer) As Integer

Private Declare Function DrawMenuBar Lib "User32" (ByVal hwnd As Integer) As Integer

Private Declare Function GetMenuItemCount Lib "User32" (ByVal hMenu As Integer) As Integer

Private Const MF_BYPOSITION = &H400&

Private Const MF_DISABLED = &H2&



Private Sub disableX(ByVal wnd As Form)

Dim hMenu As Integer, nCount As Integer

'得到系统Menu

hMenu = GetSystemMenu(wnd.Handle.ToInt32, 0)

'得到系统Menu的个数

nCount = GetMenuItemCount(hMenu)

'去除系统Menu

Call RemoveMenu(hMenu, nCount - 1, MF_BYPOSITION Or MF_DISABLED)

'重画MenuBar

DrawMenuBar(Me.Handle.ToInt32)

End Sub



Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

'使用X不能用

disableX(Me)

End Sub



Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

'关闭窗口

Me.Close()

End Sub



'如果还要屏蔽Alt+F4,加上

Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)

Dim SC_CLOSE As Integer = 61536

Dim WM_SYSCOMMAND As Integer = 274

'判断是系统消息,是不是关闭窗体,使Alt+F4无效

If m.Msg = WM_SYSCOMMAND AndAlso m.WParam.ToInt32 = SC_CLOSE Then

Exit Sub

End If

MyBase.WndProc(m)

End Sub

3tzjq 2005-02-17
  • 打赏
  • 举报
回复
上面代码也可以,如果你还想隐藏 X 按钮就可以:me.ControlBox=False
T2 2005-02-17
  • 打赏
  • 举报
回复
Private Sub Form1_Closing(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing
e.Cancel = True
End Sub
nga96 2005-02-17
  • 打赏
  • 举报
回复
听说API能行,好像没有直接的属性的
查一下API吧
wubaiyong 2005-02-17
  • 打赏
  • 举报
回复
并且保留最大化及最小化按钮
内容概要:本文介绍了一种基于多目标粒子群算法(MOPSO)的微电网优化调度模型,综合考虑风能、光伏、储能系统、柴油发电机、燃气轮机以及与主电网之间的能量交互等多种分布式能源的协同运行。通过构建以运行成本最小化、碳排放最低化和系统可靠性最优化为目标的多目标优化模型,利用Matlab平台实现MOPSO算法求解,完成对微电网在不同运行场景下的能量管理与调度方案优化。该模型能够有效平衡经济性与环保性之间的关系,适用于含多类型分布式电源的复杂微电网系统,具有较强的工程应用价值和科研参考意义; 适合人群:具备一定电力系统基础知识和Matlab编程能力的研究生、科研人员及工程技术人员,尤其适合从事微电网、智能电网、综合能源系统、可再生能源集成与优化调度等领域研究的专业人士; 使用场景及目标:①用于多能源耦合微电网系统的协同优化调度研究;②支持多目标智能优化算法在能源系统的建模与求解实践,帮助用户掌握MOPSO在实际工程问题的应用方法;③为学术论文复现、毕业设计、科研项目开发提供完整的代码实例与技术支撑; 阅读建议:建议读者结合Matlab代码与理论文档,深入理解目标函数构建、约束条件处理及Pareto最优解集生成机制,重点关注算法参数设置、多目标权衡分析与结果可视化,并可通过调整能源配置或引入新约束进行二次开发与创新研究。

16,718

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧