• FormShortCut MainForm 和 二级FORM


    发现,主FORM 定义的快捷键,在二级FORM里也有效。

    反过来,就无效。

    这样的话,就要考虑 快捷键的冲突问题 了,本来以为不同的FORM 是独立的。

    http://codeverge.com/embarcadero.delphi.vcl.using/shortcuts-of-the-main-form-acces/1076501

    John Schmidt wrote:
    
    > Hi,
    > 
    > I experience problems when using keys in nonmodal shown SDI forms of
    > the application if they are used as shortcuts in the main form. Iif
    > the sub-form is shown modal than all works fine. How can I work
    > around this 'feature'? - It's URGENT! - Thanks!
    
    The behaviour is actually intentional, it is for the support of typical
    SDI apps where only the main form has a menu that is "shared" by the
    child forms (an app like the IDE itself). Quite a bit of the VCL
    behaviour is dictated by the requirements of the IDE...
    
    To fix this problem you have to override the main form's IsShortcut
    method, like this:
    
      public
        function IsShortCut(var Message: TWMKey): Boolean; override;
    
    function TMainform.IsShortcut( Var Message: TWMKey ): Boolean;
    begin
      if Screen.Activeform <> self then
        Result := false
      else
        Result := inherited IsShortcut(Message);
    end;    
    
    This way the main form will only process shortcuts when it itself is
    the active form.
    
    -- 
    Peter Below (TeamB)  
    Don't be a vampire (http://slash7.com/pages/vampires), 
    use the newsgroup archives :
    http://codenewsfast.com
    http://groups.google.com
  • 相关阅读:
    jQuery插件开发全解析(转)
    isMemberOfClass和isKindOfClass之间区别
    NSArray,NSSet,NSDictionary总结 (转)
    NSIndexPath(转)
    Maven在dos窗口中的命令
    JPA概要
    fedora的输入法
    iQQ 学习笔记2 :借助新浪微博输入验证码、远程控制退出
    使用EXCEL制作通用打印模块
    字符串加密解密方法
  • 原文地址:https://www.cnblogs.com/CodeGear/p/4261703.html
Copyright © 2020-2023  润新知