当前位置:首页 » 服务器技术
开发技术指南» 文章正文
    引言: BOOL test::PreTranslateMessage(MSG* pMsg) {if(pMsg->hwnd==GetSafeHwnd()){ if(pMsg->message==WM_MOUSEMOVE){m_tooltip.RelayEvent(pMsg);}}return...
 

 

    摘要:最近我们用asp.net开发了一个企业内部的软件开发管理系统,这也是我们第一次用asp.net,用的语言是c#。下面我着重讲一下我们系统的架构,恳请大家指点。 先讲讲系统开发的背景。系统不大,开发的目的也是用来管理我们公司的软件开发流程,同时达到学习.net的目的。既然是公司自己的系统,同时还带有学习的目的,所以在系统的架构上,我们也力求结构完整和清晰,而把性能等其他放在第二位考虑。存在很多不完善的地方也是在所难免的,大家带着批判的眼光来看待它就好了:) ......
    摘要: 希望总结的这些知识点会对准备通过scjp考试的朋友有所帮助!难免有错误的地方欢迎大家批评指正。 thread类是在java.lang包中定义的,sleep()和yield()是thread的静态方法。但是wait()、notify()、notifyall()是object类的实例方法。要让一个线程启动要调用start()方法,但是具体什么时间线程开始运行是跟操作系统和虚拟机相关的。 任何时候都要记得string类是不可修改的,但是不要认为调用某些方法一定......


关于c#中的消息处理函数和vc中的消息处理函数区别

 从vc入门编程的,相信大家都很熟悉pretranslatemessage与windowproc两个函数,前者是预处理windows发给控件的消息,后者是处理剩余的控件消息。对于pretranslatemessage函数,一般来说,我们是这样处理控件消息的:

【相关文章:Linux2.6内核在嵌入式应用上的突破

【扩展阅读:C#就是Java只不过差了一点点

【扩展信息:PB中自定义事件ID含义

bool test::pretranslatemessage(msg* pmsg)

{

if(pmsg->hwnd==getsafehwnd())

{

if(pmsg->message==wm_mousemove)

{m_tooltip.relayevent(pmsg);}

}

 return cdialog::pretranslatemessage(pmsg);

}

}

分为两层,先判断该消息是属于那个控件窗口的,再判断这个消息的类型。

对于windowproc函数,我们通常是这样处理控件消息的:

lresult test::windowproc(uint message, wparam wparam, lparam lparam)

{

if(message==wm_syscommand)

if(wparam==sc_restore)

wparam=sc_maximize;

 return cdialog::windowproc(message, wparam, lparam);

}

这个函数对控件消息的处理方法是先把消息发给当前控件,如果不处理,则发给其父窗口,如果其父窗口也不处理,则发给当前程序处理。

而在c#中,消息处理函数有所改变。对于preprocessmessage函数:

我们必须在需要预处理消息的控件中重载这个函数,而不能仅在父窗口重载这个函数。

  public override bool preprocessmessage(ref message msg)

  { 

  

   if(msg.msg==0x101)

   {

  

   


...   下一页
    摘要: 实现和ie浏览器交互的几种方法的介绍(转载) ---- 1.引言 ---- 如何实现对ie浏览器中对象的操作是一个很有实际意义问题,通过和ie绑定的dll我们可以记录ie浏览过的网页的顺序,分析用户的使用行为和模式。我们可以对网页的内容进行过滤和翻译,可以自动填写网页中经常需要用户填写的form内容等等,我们所有的例子代码都是通过vc来表示的,采用的原理是通过和ie对象的接口的交互来实现对ie的访问。实际上是采用com的技术,我们知道com是和语言无关的......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE