mfc的menu确是不如C#活着java那么easy..
首先在rc里添加menu资源。。然后在ui界面里先设置一下你的菜单。。
在第(二)部分已经简单知道了怎么取得tray的鼠标左右点击事件。。下面我们就把左右点击事件分开。。


1

2



3

4



5

6

7

8



9

10

11

12



13

14

15

16

17

18

19

20

21

22



23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

ok,测试一下发现菜单运行良好。。不过这里还有个问题我有点疑问。。不知道是不是只有我的电脑有这个问题。。我在点右键的时候有一定概率把任务栏的那个菜单点出来。。不知道问什么。。
我们继续。
菜单是出来了。。下面开始添加事件。。
// .h

// .cpp


BOOL CDesktopDlg::OnCommand(WPARAM wParam, LPARAM lParam)
{
switch (wParam)
{
// 这几个id是在rc里面定义的。。
case ID_TRAYMENU_32771:
trayToDialog();
break;
case ID_TRAYMENU_32772:
dialogToTray();
break;
case ID_TRAYMENU_32773:
OnExit();
break;
case ID_TRAYMENU_32774:
showAboutDlg();
break;
// 添加这个command之后。。原来的button事件不管用了。。
// 经测试在这里好用。。原因不明。。
case IDOK:
OnBnClickedOk();
break;
case IDCANCEL:
OnBnClickedCancel();
break;
}
return true;
}
ok..现在再运行一下。。可以菜单就可以用了。。
下面来添加一下小气球的提示。。其实很简单。。写一个方法:


1

2



3

4

5

6

7

8

9

10

11

12

然后在init的时候或者任何你需要的时候调用就可以了。。但是气球还是不要用太多为好。。或者像msn似的。。添加一下鼠标点击事件。。然后下回就再也不自动提示了。。当然这个可能就要借助注册表了。。
这四部份实际上是为了完成一个叫做女巫店 - 每周运程的一个小东东。。也是我第一次做mfc程序。。感觉还挺简单的。。程序分享出来吧。。就是通过网络连接nownow的女巫店。。然后读取rss文件(nownow..我要向你抗议。。你现在的文件格式我很难解析。。)。。然后到本地显示。。方便查询。。
ps.附上这个小东西。。顺便支持一下nownow。。你弄得这玩意太准了。。够意思的话一定要教教我。。嘿嘿。。
女巫店-桌面版
ok,关于托盘程序的mfc就此告一段落。。尽管写的很颓。。就这样吧。。:)