MFC_1.3 控件子类化 消息反射】的更多相关文章

控件子类化 如果想要在默认的控件类中添加一些功能,就需要子类化一个控件类 在类内可以响应控件所有的消息,并且可以添加自己的函数和数据 通过类向导子类化控件的步骤 打开类向导,创建一个 MFC 类,不要选错项目   创建继承自对应类的子类 可以在子类中添加新功能,想要应用必须要绑定到控件 设置好需要包头文件. 消息映射和消息反射 消息映射指的是,通过消息映射宏获取消息并进行对应的处理 处理按键消息:按键获取消息->打包成COMMAND发送给父类->父类处理消息 消息反射指的是,父类在处理控件消息…
所有Developer Express .NET产品都有本地化资源,比如按钮属性,控件属性描述,菜单项,确认和错误的信息等等,所有这些资源字符串可以很容易地被翻译成各种语言. 先看下面汉化前后的图片: 汉化前 汉化后 如何实现上述的汉化呢?Dev汉化总结下来一般分三种形式:一种是利用已经汉化好的资源包:一种是使用本地对象类,利用代码汉化:还有就是资源包和代码结合.下面我们就这三种情况的实现方法和各自的利弊做一详细的讲解. 一.利用资源包汉化 一.如何使用资源包进行汉化 首先,您需下载现有的资源包…
有时,使用create()在运行时创建的控件不能将消息映射到父窗口内,此时需要使用消息转发的机制,主要原理:注册一个全局的消息,针对接收消息的控件编写继承类,在该继承类中响应消息,并将已注册的全局消息转发给控件类的父窗口,在父窗口中响应该注册消息. 例: 定义一个继承自CTreeCtl的控件类: class CSTreeCtrl : public CTreeCtrl{    DECLARE_DYNAMIC(CSTreeCtrl)public:    CSTreeCtrl();    virtua…
设置EditText控件中提示消息hint的字体颜色和大小 1.设置字体大小 代码例: public void init(){ hint= (EditText) findViewById(R.id.in_login); // 新建一个可以添加属性的文本对象 SpannableString ss = new SpannableString("请输入用户名"); // 新建一个属性对象,设置文字的大小 AbsoluteSizeSpan ass = new AbsoluteSizeSpan(…
DevExpress 第三方控件汉化的全部代码和使用方法   DevExpress.XtraEditors.Controls  此控件包中包含的控件最多,包括文本框,下拉列表,按钮,等等       DevExpress.XtraGrid 网格       DevExpress.XtraBars 菜单栏 和 工具栏       DevExpress.XtraNavBar 导航条       DevExpress.XtraPrinting 报表打印相关       DevExpress.XtraR…
当我们通过 CWnd::CreateControl() 动态创建 ActiveX   控件时, Windows 消息并不会被发送给我 们的由   CWnd 派生得控件类.例如,即使我们为 WM_KILLFOCUS   消息创建了句柄,这个句柄   也是不会被调用的.(不信你试试 :)) 引起这个问题的原因时, CWnd::CreateControl() 并不会使我控件的   HWND 子类化. 知道了原因,要解决问题就不难了.我们只要在控件创建之后使它子类化就行了.通过一下步 骤可以实现: 1.…
子类化一个Windows控件与子类化一个C++类不同,子类化一个控件要求你把一个窗口的一些或所有的消息映射都替换成自己的函数来响应,这样你就有效的阻止了控件去做系统默认的行为,而按自己的想法去做.子类化有两种类型: 实例子类化(instance subclassing)和全局子类化(global subclassing).实例子类化是子类化一个窗口中的单一实例,全局子类化是把整个窗口子类化为一个特殊的类型.这里我们仅讨论单一实例子类化.记住CWnd派生类对象与窗口本身(一个HWND)的差别是很重…
更新了一些字段,VER9.3.3 using System; using DevExpress.XtraEditors.Controls; using DevExpress.XtraGrid.Localization; using DevExpress.XtraBars.Customization; using DevExpress.XtraBars.Localization; using DevExpress.XtraNavBar; using DevExpress.XtraPrinting.…
原文:DevExpress的Web控件汉化方法 项目中用到devexpress的web控件,机器没有安装devexpress控件,直接在项目中引用的dev的dll,项目运行时发现都是英文界面,所以解决汉化问题. 项目中用的是v10.2版本,以此版本为例,其他版本方法应该类似. 步骤如下:   1.从官网下载对应的汉化包,地址:http://www.devexpresscn.com/news/DevExpress-news-94.html,找到对应的版本下载. 2.在下载的汉化文件里找到\Web\…
Ø  简介 本文介绍下 DevExpress 控件的汉化方法,对于英文不怎么好的同学来说,还是非常有必要的.DevExpress 汉化分为运行时汉化,和设计时汉化. 1.   运行时汉化 1)   首先下载汉化包,需下载对应的汉化版本与控件版本一致. 2)   将下载的汉化资源包拷贝至程序运行目录下,如 \bin 目录下,例如:\bin\Debug\zh-CN. 3)   Main 方法中加入如下代码: static void Main() { System.Threading.Thread.C…