コンテキストメニューのマウスカーソル変更

[戻る]
ろー 2009/04/08(水) 18:07:28
お世話になります。

リッチエディットコントロールにコンテキストメニューを追加しました。
右クリックでメニューは表示されるのですが、メニュー選択のマウスカーソルがIBeamの
まま、矢印カーソルになりません。

コンテキストメニューのカーソルの変更方法をお教えいただけないでしょうか。

Visual Studio 2008 Pro SP1 C#  OS:Vista Ultimate SP1 ,XP SP3
.NET Framework 2.0以降

ろー 2009/04/19(日) 16:37:30
なかなか回答がつかないものですね。

@質問の仕方が悪く現象の確認ができないのでしょうか?
Aそれとも答えをお持ちの方がいらっしゃらないのでしょうか?

@の場合、どのように記載するとよいのでしょうか
Aの場合、ほかの場所をご紹介いただけないでしょうか

よろしくお願いします。

aetos 2009/04/22(水) 14:58:58
(1)ですかね。
俺の環境で試したら再現しません。

最短の再現手順を記載するといいと思います。
俺の場合、
(1) C# で Windows Form プロジェクトを作る
(2) Form に RichTextBox コントロールを貼り付ける
(3) Form に ContextMenuStrip コントロールを貼り付ける
(4) RichTextBox の ContextMenuStrip プロパティに (3) で貼り付けたものを選択する
(5) 実行する
(6) RichTextBox 上で右クリックする
これだけで、メニュー上ではちゃんと矢印カーソルになります。

(a) 上記の手順を試してみて、それでも IBeam になってしまうのか。
(b) 上記の手順では上手くいくのなら、上記の手順と違うところはあるのか。原因はそこ
なのか。

を調べてみてください。

ろー 2009/04/24(金) 15:03:52
[[解決]]
aetos様 ご回答ありがとうございます

問題の発生するコードは以下のようにContextMenuを使用していました。
ContextMenuStripに変えて解決いたいました。
ありがとうございました。

    public partial class Form1 : Form
    {
        public ContextMenu m_ContextMenu;
        public Form1()
        {
            InitializeComponent();
            m_ContextMenu = new ContextMenu();
            MenuItem menuOpen = new MenuItem("Open");
            menuOpen.Click += new EventHandler(menuOpen_Click);
            m_ContextMenu.MenuItems.Add(menuOpen);
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            richTextBox1.ContextMenu = m_ContextMenu;
        }
        private void menuOpen_Click(object sender, EventArgs e)
        {
        }
    }

古いスレッドには追加発言できません。