| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2682 人关注过本帖
标题:向hellovfp大哥及各位论坛大牛请教关于windows编程记事本的问题
只看楼主 加入收藏
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
以下是引用hellovfp在2012-4-26 15:11:33的发言:

学习C#之前走一遍windows程序设计,或许你会快速的掌握WinForm中的事件,方法。
hellovfp 大哥 俺会继续的。

梅尚程荀
马谭杨奚







                                                       
2012-04-26 15:21
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
收藏
得分:0 
回复 30楼 有容就大
呵呵,努力学习,记事本也可以做得很强大的。。想想怎么实现记事本的历史菜单功能?

我们都在路上。。。。。
2012-04-26 15:26
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
回复 32楼 hellovfp
能否给点提示 我以后也有个参照。

梅尚程荀
马谭杨奚







                                                       
2012-04-26 15:35
waterstar
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:5
帖 子:984
专家分:2810
注 册:2010-2-12
收藏
得分:5 
楼主还是很犀利的,学了三年c的小菜飘过~

冰冻三尺,非一日之寒;士别三日,不足刮目相看!
2012-04-26 19:07
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
回复 34楼 waterstar
菜一菜 更健康 同菜。

梅尚程荀
马谭杨奚







                                                       
2012-04-26 22:01
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
收藏
得分:0 
回复 33楼 有容就大
很简单的,我们需要一个地方来放置用户打开过的文件名,然后在程序初始化的时候读取这些文件名,并动态添加到主菜单中,这当然得设定一下历史菜单的个数,因为添加主菜单的时候需要菜单ID值,我们需要一个ID范围,以便在处理菜单消息的时候,if((LOWORD(lParam) > 某起id值 && <ID+菜单个数)) 就可以判定是历史文件被点,加载之。

这个用来放置的地方,当然有很多喽,可以用我们C语言的文件函数实现,也可以用Win32的ini读取写入函数实现,还可以放在注册表中供读取。
需不需要数据结构呢?可以使用队列,因为用户在使用记事本的时候有可能打开更多的文件,使用队列可以让最早的历史菜单从队列中去掉,把最新的文件加入到队列中。

所以写程序的时候不要忘了数据结构这个重要的利器。

我们都在路上。。。。。
2012-04-27 10:25
hahayezhe
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖南张家界
等 级:贵宾
威 望:24
帖 子:1386
专家分:6999
注 册:2010-3-8
收藏
得分:0 
学习是自己的事情,选择一套适合自己的学习方法很重要,不要去盲目跟风。
我就是从底层学起来的,GUI我第一本书就是windows程序设计,学这个确实很难
但是当SDN具备一定的基础后,你再去学MFC等上层GUI库时会觉得倍儿轻松。
学C、C++时也是为了弄懂内存管理等一些细节转而去先深入汇编,
当汇编弄懂个大概时,C、C++内存管理已经不能再难倒你了。
个人觉得底层就是筑基,只有基础牢固,才能学的更远。
2012-04-27 10:34
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
回复 36楼 hellovfp
是不是有点象PS里的历史记录的那个功能 也就是把以前动作存储起来放到一个数据结构中 如果需要在点击调用。

梅尚程荀
马谭杨奚







                                                       
2012-04-27 10:41
有容就大
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:东土大唐
等 级:版主
威 望:74
帖 子:9048
专家分:14309
注 册:2011-11-11
收藏
得分:0 
回复 37楼 hahayezhe
嗯 说的是
windows程序设计和 windows编程自学手册我感觉是两本很好的书 虽然我看的很慢 但是喜欢他们。
顺便问两位个问题
比如在CreateWindow("button", "Fill ComboBox", WS_CHILD | WS_VISIBLE |
        BS_DEFPUSHBUTTON, 10, 10, 200, 30, hWnd, HMENU(ID_FILLBTN),
        hInstance, NULL);中 的HMENU(ID_FILLBTN)貌似很重要 只有他才能让创建的控件和主窗口联系起来 如果括号里是一个ID号还好理解 但我看到有的程序中创建了几个按钮使用的全部是HMENU(-1),这个怎么理解?


梅尚程荀
马谭杨奚







                                                       
2012-04-27 10:53
hahayezhe
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:湖南张家界
等 级:贵宾
威 望:24
帖 子:1386
专家分:6999
注 册:2010-3-8
收藏
得分:0 
hMenu
  菜单句柄,或依据窗口风格指明一个子窗口标识。对于层叠或弹出式窗口,hMenu指定窗口使用的菜单:如果使用了菜单类,则hMenu可以为NULL。对于子窗口,hMenu指定了该子窗口标识(一个整型量),一个对话框使用这个整型值将事件通知父类。应用程序确定子窗口标识,这个值对于相同父窗口的所有子窗口必须是唯一的。

MSDN有的:
2012-04-27 11:11
快速回复:向hellovfp大哥及各位论坛大牛请教关于windows编程记事本的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025641 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved