zoukankan      html  css  js  c++  java
  • 系统菜单的控制,使菜单项灰显及恢复功能

    Const
       MyMove = 1000; 

      //自定义消息(全局)

    M := GetSystemMenu(Application.Handle, false); 

    //获取系统菜单,M定义属性为HMENU

    DeleteMenu(M, 0, MF_BYPOSITION); 

    //删除系统菜单中的第一菜单项

    InsertMenu(M, 0, MF_ByPosition+MF_String, 1000, '还原(&R)' ); 

    //在指定位置插入菜单项

    SetMenuItemBitmaps(M, 0, MF_BYPOSITION, BMP1.Handle, BMP1.Handle); 

    //设置菜单项图标

    EnableMenuItem(M, MyMove, MF_BYCOMMAND+MF_DISABLED+MF_GRAYED); 

    //使菜单项失效并灰显

    EnableMenuItem(M, MyMove, MF_BYCOMMAND+MF_ENABLED); 

    //使菜单项恢复功能,MyMove处可以是自定义消息,也可以是系统消息,如对关闭功能的操作,可设置消息为SC_CLOSE

    对系统菜单项的功能实现,可以在OnCreate事件中加入

    Application.OnMessage := wmHMessages;

     过程实现

    Procedure Tform1.wmHMessages(var Msg : TMsg; var Handled : Boolean);
    begin
      if Msg.message = WM_SYSCOMMAND then
        begin
        if Msg.wParam = MyMove then
          begin
          SendMessage(Form1.Handle, WM_SYSCOMMAND, SC_MOVE, 0);
          end;
        end;

    end;

    //  SC_MINIMIZE 最小化
    //  SC_MAXIMIZE 最大化
    //  SC_CLOSE  关闭
    //  SC_RESTORE  还原
    //  SC_SIZE 大小
    //  SC_MOVE 移动

  • 相关阅读:
    01(b)无约束优化(准备知识)
    01(a)一元函数_多元函数_无约束极值问题的求解
    谱聚类
    分类算法
    Implementing EM for Gaussian mixtures
    0-1背包问题1
    ML_推荐系统与降维
    Machine Learning: Clustering & Retrieval机器学习之聚类和信息检索(框架)
    Linux命令
    Udacity_机器学习
  • 原文地址:https://www.cnblogs.com/gaodu2003/p/1498004.html
Copyright © 2011-2022 走看看