2

システム トレイに NotifyIcon を配置して、クリックすると、NotifyIcon のコンテキスト メニューが開き、さまざまなフォームを開くいくつかのオプションが表示されます。

ContextMenu を使用する必要があることを読みましたが、Google を使用してさまざまなコードを試した後、機能していないようです:/

この問題に関するヘルプは大歓迎です。

4

2 に答える 2

1

コンテキスト メニューを for (フォームがある場合) に追加するか、コンテキスト メニュー インスタンスを宣言します。

簡単な例を次に示します。

ContextMenu cm; NotifyIconに;

public Form1() { ni = 新しい NotifyIcon(); ni.BalloonTipIcon = ToolTipIcon.Info;

    cm = new ContextMenu();

    cm.MenuItems.Add(new MenuItem("Hello", delegate(object sender, EventArgs e)
    {
        MessageBox.Show(DateTime.Now.ToString("dd/MMM/yyyy hh:mm:ss tt"));
    }));

    cm.MenuItems.Add(new MenuItem("Exit", delegate(object sender, EventArgs e)
    {
        ni.Visible = false;
        ni.Dispose();
        Application.Exit();
    }));

    ni.ContextMenu = cm;

    ni.Visible = true;
    ni.Icon = this.Icon;
}
于 2009-10-30T04:47:40.103 に答える
1

フォーム デザイナーで ContextMenu を既にデザインしましたか? そうでない場合は、それが最初のステップです。(左側のツールボックスでダブルクリックするだけで) 新しい ContextMenu を作成し、すべてのメニュー項目をそれに追加します。次に、各項目をダブルクリックして、空の .Click イベント ハンドラーを配置します。これは、formname.Show() 呼び出しを配置する場所です。また、フォーム デザイナで NotifyIcon を追加する必要があります。そのプロパティを編集する場合、「コンテキスト メニュー」というプロパティがあり、ここに上記の ContextMenu の名前を入力します。アイコンを常に表示したい場合は、Visible プロパティを True に設定します。

于 2009-10-30T04:43:08.350 に答える