-1

Delphi7を使用しています。カスタムメモコントロール、TSyntaxMemoコンポーネントを使用しています。

多くのアプリ(メモ帳、メモ帳++、uTorrentなど)がスクロールバーに標準のポップアップメニューを使用していることがわかります。

  • ここをスクロール
  • ページアップ
  • ページダウン
  • スクロールアップする
  • 下へスクロール

(これは垂直バーのリストです)。「私の」メモのスクロールバーにこのようなメニューを使用するにはどうすればよいですか?これらのメニューを手作業で行うことはありません。

4

1 に答える 1

1

EDITそのメニューをWindowsコントロールに表示するために、何もする必要はありません。これは、コントロールによって実装される標準のシステムメニューです。これはTMemo、バニラVCLフォームアプリに追加されたものに表示されます。これは、コントロールTMemoの複数行のバリアントの単純なラッパーであるためです。EDIT

ここに画像の説明を入力してください

.dfmファイルに必要なものは次のとおりです。

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

これは、システムによって提供される機能です。あなたのコントロールがそのように振る舞っていない場合、私はそれが起こる次の理由を考えることができます:

  1. あなたのコントロールはWindowsEDITコントロールではありません。
  2. コントロールはコントロールですがEDIT、このメニューを表示するデフォルトのメッセージハンドラーを使用していません。

項目1が理由である場合、システムにメニューを表示させるためにできることは何もありません。コントロールがコントロールでない場合、EDIT魔法のように動作することはほとんど期待できません。項目2の場合、メニューがコントロールのデフォルトのメッセージハンドラーによって処理されるようになるメッセージをコントロールがどのように停止しているかを理解する必要があります。

于 2013-03-24T15:46:03.383 に答える