Delphi:允许horz / vert滚动条显示标准弹出菜单?

时间:2013-03-24 15:37:48

标签: delphi

我使用的是Delphi7。我使用自定义memo control,TSyntaxMemo组件。

我看到许多应用程序(Notepad,Notepad ++,uTorrent,...)使用滚动条的标准弹出菜单:

  • 在这里滚动
  • 向下
  • 向上翻页
  • page down
  • 向上滚动
  • 向下滚动

(这是垂直条的列表)。 如何在“我的”备忘录中使用滚动条的这些菜单?不用手做这些菜单。

1 个答案:

答案 0 :(得分:1)

您无需执行任何操作即可在Windows EDIT控件中显示该菜单。这是控件实现的标准系统菜单。它出现在添加到vanilla VCL表单应用的TMemo上,因为TMemo很简单,是EDIT控件的多行变体的包装。

enter image description here

这是我在.dfm文件中所需的全部内容:

object Form1: TForm1
  object Memo1: TMemo
    Align = alClient
    ScrollBars = ssVertical
  end
end

这是系统提供的功能。如果您的控件不是那样,那么我可以想到以下原因:

  1. 您的控件不是Windows EDIT控件。
  2. 您的控件是EDIT控件,但它没有使用导致此菜单的默认消息处理程序。
  3. 如果第1项是原因,那么您无法使系统显示菜单。如果你的控件不是EDIT控件,你几乎不能指望它像神奇的一样。在第2项的情况下,您需要弄清楚控件如何停止导致控件的默认消息处理程序处理菜单的消息。